



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
51CTO学院 网址:edu.51CTO.com51cto学院-JavaSE之多线程实战视频课程课程目标多线程的概念在Java中实现多线程Thread类Runnable接口线程的生命周期和线程状态后台线程线程同步与死锁适用人群Java初学者,Java初级开发人员课程简介多线程的概念在Java中实现多线程Thread类Runnable接口线程的生命周期和线程状态后台线程线程同步课程1多线程概念和主线程免费观看28分钟运行在操作系统之上的每个应用程序,都会占用一个独立的进程(process),而进程内又允许运行多个线程(thread),这意味着一个程序可以同时执行多个任务的功能; 在基于线程的多任务而处理环境中,线程是执行特定任务的可执行代码的最小单位; 多线程帮助你写出CPU最大利用率的高效程序,因为空闲时间保持最低,这对Java运行的交互式的网络互连环境是至关重要的,例如:网络的数据传输速率远低于计算机的处理能力,在传统的单线程环境中,你的计算机必须花费大量的空闲时间来等待,多线程能够使你充分利用这些空闲时间。2通过Thread实现线程免费观看14分钟java.lang.Thread类用于创建和操作线程,其中包括几个很重要的静态方法,用于控制当前线程3通过Runable接口实现线程11分钟java.lang.Runnable接口中仅仅只有一个抽象方法: public void run(); 也可以通过实现Runnable接口的方式来实现线程,只需要实现其中的run方法即可; Runnable接口的存在主要是为了解决Java中不允许多继承的问题; 使用Runnable接口可以使语法的自由度更高。4卖票示例21分钟讲解卖票示例5同步synchronized (一)33分钟同步代码块 synchronized (对象) 需要被同步的代码 对象如同锁 。持有锁的线程可以在同步中执行 没有持有锁的线程即使获取CPU的执行权,也进不去, 因为没有获取锁 同步的前提: 必须要有2个或者2个以上的线程 必须是多个线程使用同一个锁 好处:解决了多线程的安全问题 坏处:多线程需要判断锁,较为消耗资源6同步synchronized (二)20分钟同步代码块 synchronized (对象) 需要被同步的代码 对象如同锁 。持有锁的线程可以在同步中执行 没有持有锁的线程即使获取CPU的执行权,也进不去, 因为没有获取锁 同步的前提: 必须要有2个或者2个以上的线程 必须是多个线程使用同一个锁 好处:解决了多线程的安全问题 坏处:多线程需要判断锁,较为消耗资源7优先级9分钟事实上,计算机只有一个CPU,各个线程轮流获得CPU的使用权,才能执行任务; 优先级较高的线程有更多获得CPU的机会,反之亦然; 优先级用整数表示,取值范围是110,一般情况下,线程的默认优先级都是5,但是也可以通过setPriority和getPriority方法来设置或返回优先级; Thread类有如下3个静态常量来表示优先级: MAX_PRIORITY:取值为10,表示最高优先级 MIN_PRIORITY:取值为1,表示最底优先级 NORM_PRIORITY:取值为5,表示默认的优先级8生命周期和停止线程24分钟新建状态(New):使用new关键字创建线程对象,仅仅被分配了内存; 就绪状态(Ready):线程对象被创建后,等待它的start方法被调用,以获得CPU的使用权; 运行状态(Running):执行run方法,此时的线程的对象正占用CPU; 睡眠状态(Sleeping):调用sleep方法,线程被暂停,睡眠时间结束后,线程回到就绪状态,睡眠状态的线程不占用CPU; 死亡状态(Dead):run方法执行完毕后,线程进入死亡状态; 阻塞状态(Blocked):线程由于某些事件(如等待键盘输入)放弃CPU,暂停运行,直到线程重新进入就绪状态,才有机会转到运行状态;9yield和join18分钟sleep和yield都是Thread类的静态方法,都会使当前处于运行状态的线程放弃CPU,但两者的区别在于: sleep给其它线程运行的机会,但不考虑其它线程的优先级;但yield只会让位给相同或更高优先级的线程; 当线程执行了sleep方法后,将转到阻塞状态,而执行了yield方法之后,则转到就绪状态; sleep方法有可能抛出异常,而yield则没有; 在一般情况下,我们更建议使用sleep方法。 join方法用于等待其它线程结束,当前运行的线程可以调用另一线程的join方法,当前运行线程将转到阻塞状态,直至另一线程执行结束,它才会恢复运行。10生产者和消费者35分钟在实际的软件开发过程中,经常会碰到如下场景:某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是广义的,可以是类、函数、线程、进程等)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年区块链工程师职业能力测试卷:区块链技术在供应链金融中的风险控制与防范试题
- 2025年职业指导师专业能力测试卷:企业文化建设与员工激励试题
- 2025年导游资格证考试笔试冲刺试卷:重点攻克旅游法规与政策知识
- 2025年专升本艺术概论模拟试卷-艺术传播与媒介融合趋势解读
- 2025年营养师基础知识考核试卷:营养师营养教育与培训试题汇编
- 2025年消防安全教育培训考试题库(消防安全管理)理论试题
- 2025年护士执业资格考试题库(社区护理学专项)老年护理学专项试题库
- 2025年CFA特许金融分析师考试财务会计模拟试题卷
- 2025年乡村医生考试题库:农村常用药物储存与保管试题集
- 2025年消防执业资格考试题库(消防应急救援行动指挥)高频考点预测
- 国家开放大学《传感器与测试技术》实验参考答案
- 危害分析与关键控制点HACCP课件
- 防灾减灾科普知识答题及答案
- 2020年老年科护士分层次培训计划
- Q∕SY 1419-2011 油气管道应变监测规范
- 消费者心理与行为教学ppt课件(完整版)
- 颈椎功能障碍指数,Neck Disabilitv Index,NDI
- 天地万物一体 的整体观念
- 大班音乐游戏《邮递马车》课后反思
- 2022新高考卷小说《江上》 答案+评点
- 潜水式排污泵检验报告(共8页)
评论
0/150
提交评论