进程和多线程_第1页
进程和多线程_第2页
进程和多线程_第3页
进程和多线程_第4页
进程和多线程_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

多线程 进程简介 进程是程序在计算机上的一次执行活动 是程序一次动态执行过程 它是系统进行资源分配和调度的一个可并发执行的独立单位 或者说进程应用程序的运行实例 是操作系统进行资源分配的单位 当运行一个程序 就启动一个进程 Process类 为了了解正在运行的进程的有关信息 NET提供了Process类 使用Process可以访问本地或远程计算机上的进程 并且可以启动和终止本地系统中的进程 使用这个类需要导入System Diagnostics 常用方法和属性 线程概述 线程概述 NET对线程的支持 NET中线程的结构 线程概述 线程操作系统分配处理器时间的基本单元使多个操作看起来象同时发生的使用多线程的优点应用程序在进行用户界面响应时还可做后台操作按优先级执行任务通过网络连接到Web服务器或数据库使用线程的潜在的缺点因为增加了操作系统的负荷所以可能降低性能控制多线程的代码比较难 可能导致很多BUG NET对线程的支持 线程的命名空间System Threading可以进行异步程序设计 NET中线程的结构 运行应用程序的主机 应用程序A 应用程序B 共享数据 共享数据 线程1 线程2 线程3 线程的私有数据 线程的私有数据 线程的私有数据 在 NET中使用线程 启动线程线程属性和参数管理线程线程本地存储中断或结束线程 启动线程 创建线程对象的实例构造方法用ThreadStart代理作为参数ThreadStart指向的方法将在线程中执行线程是通过Start方法来启动 Threadt newThread newThreadStart MyClass AStaticMethod t Start Threadt newThread this PrintTime t Start 线程属性和参数 Thread Name获取或设置线程名Thread Priority获取或设置线程优先级Thread IsBackground设置线程是否后台运行后台运行不会保持前台是活动的线程的参数封装在对象内 t Name MyBackgroundThread t Priority ThreadPriority AboveNormal t IsBackground true 管理线程 Thread Sleep阻塞当前线程Suspend和Resume并不常用可能导致死锁等应用程序的严重问题Thread Join等待其它线程停止Thread WaitHandle等待一个或多个事件Thread ThreadState属性 线程状态 Thread Sleep 3000 blocksfor3seconds t Start t Join Waitforthethreadtoexit WaitHandle WaitAll waitEvents 中断和结束线程 Thread Interrupt方法中断处于执行状态的线程Thread Abort方法结束线程运行 线程安全概述 一般是在线程间共享数据和资源的问题 资源竞争 执行顺序失控导致死锁 线程互相等待导致都不能执行最好的方法是在可能情况下尽量不共享资源封装数据到实例 而不是通过请求共享数据 NET框架提供了三种策略来同步静态方法和实例的域 上下文同步代码区域同步手工同步 多线程 线程是指程序中的一个单一的顺序控制流 线程是进程中的实体 一个进程可以拥有多个线程 一个线程必须有一个父线程 线程不拥有系统资源 只有运行必须的一些数据结构 它与父线程的其他线程共享该进程所拥有的全部资源 线程可以创建撤销 从而实现程序的并发执行 线程和进程的关系 联系 线程在进程中 一个进程可以包含多个线程 区别 线程的划分比进程小 进程能够独立运行 有自己独立的数据空间和代码 而线程不能独立运行 一个进程的所有线程共享该进程的全部资源 进程是相对静止的 它代表代码和数据的地址空间 而线程是动态的 每个线程代表进程内的一个执行流 死锁 死锁是指使用共享资源的两个或多个线程各自占有一些共享资源 并且互相等待其他线程占有的资源才

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论