- 0
- 0
- 约5.17千字
- 约 29页
- 2016-10-26 发布于广东
- 举报
2012年2月29日10时35分 《Visual C#.NET程序设计教程(第2版)》 ——四川省精品课程、四川省高等教育质量工程建设项目 Email:LFQ501@ 第*页 人民邮电出版社与电子科技大学成都学院联合打造——精品教材 Visual C#.NET程序 设计教程(第二版) 2012年2月29日10时35分 《Visual C#.NET程序设计教程(第2版)》 ——四川省精品课程、四川省高等教育质量工程建设项目 Email:LFQ501@ 人民邮电出版社与电子科技大学成都学院联合打造——精品教材 第*页 电子科大成都学院计算机系 课件制作:罗福强、杨剑 E-Mail:LFQ501@SOHU.COm 在线教务辅导网: 教材其余课件及动画素材请查阅在线教务辅导网 QQ:349134187 或者直接输入下面地址: * 第9章 多线程和异步编程 1. 总体要求 了解进程及线程的概念。 掌握使用C#进行多线程的创建及简单控制。 掌握线程的同步策略。 了解线程池技术。 掌握异步编程的设计与实现技术 2. 学习重点 线程的启动、管理和终止 线程安全的实现 异步编程的实现方法。 第9章多线程和异步编程 主要内容 线程创建与控制 多线程的同步 9.3 9.1 9.2 多线程的概念 9.4 线程池 异步编程 9.5 9.1多线程的概念 9.1.1 线程和进程 9.1.2 线程的生命周期和状态 9.1.3 线程的优先级 返回 9.1.1 线程和进程 进程是一个正在运行的应用程序,拥有独立的资源,进程之间相互隔离,互不干扰。 线程是操作系统分配处理器时间的基本单元。一个进程可以包含一个或多个线程。线程共享其所属进程所拥有的资源。 线程处理通常分为两大类: (1)单线程处理:指一个进程中只能有一个线程 (2)多线程处理:指将一个进程划分为多个线程,可最大限度地利用处理器和用户的时间,提高系统的效率。 9.1.2 线程的生命周期和状态 从线程被创建到被终止称为线程的生命周期。 9.1.3 线程的优先级 优先级 属性 最高 Highest 具有该优先级的线程会最先被考虑调度执行 较高 Above Normal 具有该优先级的线程会在最高优先级的线程之后、正常优先级的线程之前被考虑调度执行 正常 Normal 具有该优先级的线程会在较高优先级的线程之后、较低优先级的线程之前被考虑调度执行 较低 Below Normal 具有该优先级的线程会在正常优先级的线程之后、最低优先级的线程之前被考虑调度执行 最低 Lowest 具有该优先级的线程会最后被考虑调度执行 9.2线程创建与控制 9.2.1创建和启动线程 9.2.2 控制线程 返回 9.2.1创建和启动线程 在.NET中,用户只需要利用System.Threading提供的大量线程编程类和接口来处理线程即可。其中,Thread类提供创建并控制线程、设置线程优先级并获取运行状态等功能。 Thread类的常用属性包括: CurrentThread:获取当前正在运行的线程 IsAlive:获取当前线程的执行状态。如果此线程已启动并且尚未正常终止或中止,则为 true;否则为 false。 Name:获取或设置线程的名称(默认为null)。 Priority:获取或设置线程的调度优先级(默认为ThreadPriority.Normal) ThreadState:获取当前线程的状态。 创建线程时,首先创建一个Thread类的对象,其构造函数的参数是一个ThreadStart委托,该委托用来引用一个被托管了的作为新的线程执行的方法。然后,调用Thread对象的Start()方法启动并执行新的线程。 操作演示:实例9-1 详细代码:见教材 执行效果: 9.2.2 控制线程 1.暂停和恢复线程 (1) 使用Thread.Sleep 立即将当前线程阻塞若干ms,进入WaitSleepJoin状态。调用Thread.Interrupt可提前恢复。 (2) 使用Thread.Suspend 将当前线程阻塞,但可调用Thread.Resume恢复。注意:与Sleep不同的是,Supspend不会使线程立即停止执行,一切由CLR安排;如果线程尚未启动或已经停止,则不能将其挂起。 (3) 使用Thread.Join 强制一个线程等待另一个线程而停止。 2.中断和中止线程 (1) 使用Thread.Interrupt 调用方法可中断处于休眠的线程,将其重新放回调度队列中,可引发ThreadInterruptedException异常。 (2) 使用Thread.Abort 调用该方法可永久地终止一个线程,可引发ThreadAbortException异常。 操作演示: 【实例9-2】 详细代码:见教材 运行
您可能关注的文档
- 新Visual Basic程序设计实用教程 教学课件 刘瑶 第4章 常用控件.ppt
- 新Visual Basic程序设计实用教程 教学课件 刘瑶 第5章 程序控制结构.ppt
- 新Visual Basic程序设计实用教程 教学课件 刘瑶 第6章 数组.ppt
- 新Visual Basic程序设计实用教程 教学课件 刘瑶 第7章 过程.ppt
- 新Visual Basic程序设计实用教程 教学课件 刘瑶 第8章 文件.ppt
- 新Visual Basic程序设计实用教程 教学课件 刘瑶 第9章 数据库基础.ppt
- 新Visual Basic程序设计应用教程 电子教案&源代码 薛晓萍 第2章 第2章 Visual Basic语言基础.ppt
- 新Visual Basic程序设计应用教程 电子教案&源代码 薛晓萍 第3章 第3章 程序设计基本结构.ppt
- 新Visual Basic程序设计应用教程 电子教案&源代码 薛晓萍 第4章 第4章 常用内部控件.ppt
- 新Visual Basic程序设计应用教程 电子教案&源代码 薛晓萍 第5章 第5章 数组.ppt
最近下载
- 税务师-税法一-突击强化题-第4章城市维护建设税、教育费附加及地方教育附加.docx VIP
- 航空发动机维修(MRO)市场现状调研报告_2025年12月.docx VIP
- 粉笔-市场前景及投资研究报告-线上公考,OMO多元化发展路径.pdf
- Invitrogen Qubit荧光计Qubit 4和Qubit Flex说明书.pdf
- 油水分离器采购及安装合同模板.docx VIP
- 2025-2030年中国城轨建设行业深度发展研究及“十五五”发展规划与趋势预测研究报告.docx
- 云米Link说明书用户手册.pdf
- 银河麒麟服务器虚拟化系统V10 彩页.pdf VIP
- 好的教育读书分享 课件(共18张PPT).pptx VIP
- 申论真题及答案重庆2025.doc VIP
原创力文档

文档评论(0)