- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第1页/共23页Java多线程管理的学习课件第2页/共23页本章目标线程的优先级:优先级概述线程优先级的具体应用线程同步:线程同步的目的线程同步的具体应用线程死锁:产生死锁的必要条件与解决方法wait和notify机制 第3页/共23页线程优先级 多线程运行时需要定义线程运行的先后顺序线程优先级是用数字表示,数字越大线程优先级越高,取值在(1到10)。默认优先级(为5)。第4页/共23页优先级应用一 public class PriThread { public static void main(String args[ ]) { ThreadA a=new ThreadA(); ThreadB b=new ThreadB(); a.setPriority(2);//设置优先级别,数值越大优先级越高 b.setPriority(3); a.start(); b.start(); } }第5页/共23页优先级应用二 class ThreadA extends Thread { public void run() { System.out.println(我是线程A); } } class ThreadB extends Thread { public void run() { System.out.println(我是线程B); } } 因为在代码段当中我们把线程B的优先级设置高于线程A,所以运行结果先执行线程B的run()方法后再执行线程A的run()方法。 第6页/共23页线程优先级的获得 JAVA中获得线程优先级的方法,是通过getPriority()方法来实现的。 public class PriThread { public static void main(String args[ ]) { Thread a=new Thread(); Thread b=new Thread(); int priA=a.getPriority();//获得优先级的方法 int priB=b.getPriority(); System.out.println(priA); System.out.println(priB); } }第7页/共23页线程常量设置优先级设置优先级也可以用线程常量。MAX_PRIORITY为最高优先级10;MIN_PRIORITY为最低优先级1;NORM_PRIORITY是默认优先级5。第8页/共23页线程常量设置优先级示例public class PriConstant{ public static void main(String args[ ]) { Thread a=new Thread(); int temp=Thread.MAX_PRIORITY; a.setPriority(temp); //设置此线程优先级最高 System.out.println(a.getPriority()); temp=Thread.MIN_PRIORITY; a.setPriority(temp); //设置此线程优先级最低 System.out.println(a.getPriority()); temp=Thread.NORM_PRIORITY; a.setPriority(temp); //将线程优先级设置为默认 System.out.println(a.getPriority()); }}第9页/共23页线程安全问题public class Piao {public int num;public Piao(int num){this.num = num;}public void sell(String name){if(num=0){return;}System.out.println(name+卖+num);try {Thread.sleep(10);} catch (InterruptedException e) {e.printStackTrace();}num=num-1;}}第10页/共23页安全问题的解决Java中嵌套同步是安全的同步化方法同步块的方式: void method() { synchronized(this) { // } }同步方法:synchronized void method() { // }第11页/共23页同步原理synchronized (object) { // } 钥匙在对象中,而不在代码中。 每个对象有一个钥匙 为了执行synchronized()块,线程需要得到对象中的钥匙。一旦获得了钥匙,对象就不再拥有钥匙。 如果当线程要执行synchronized()时,钥匙不在对象中,线程就wait。一直到钥匙还到了对象中,才被这个线程拿到。 当线程离开syn
您可能关注的文档
- 动脉血气分析的临床应用1.pptx
- 人教遗传因子发现复习.pptx
- 全国卫生监督调查制.pptx
- 三极管频率部分简化.pptx
- 会计从业资格考试—财经法规税收征管下半年.pptx
- 企业员工管理培训.pptx
- 四章节特殊人群营养.pptx
- 内科护理学慢性阻塞性肺疾病.pptx
- 九型格与团队管理.pptx
- 公共事业管理学导论.pptx
- 化妆品公司动力部年度总结.pptx
- 七年级下册(2024)第六单元课外古诗诵读之《约客》课件(共26张PPT).pptx
- 24《寓言四则》优质课教学课件(共15张PPT).ppt
- 七年级下册(2024)第六单元课外古诗诵读之《竹里馆》课件(共26张PPT).pptx
- LIMS供应商概览与技术标书.pdf
- 线缆厂薪酬核算管理规章.doc
- 《课外古诗词诵读——逢入京使 》课件(共22张PPT)2025—2026学年统编版语文七年级下册.pptx
- 《课外古诗词诵读——贾生》课件(共22张PPT)2025—2026学年统编版语文七年级下册.pptx
- 7 谁是最可爱的人 课件 (共20张PPT) 2025-2026学年统编版语文七年级下册.pptx
- 电池厂叠片机配件管理规范规章.doc
最近下载
- 中国空调设备行业市场深度研究及发展趋势预测报告.docx
- 砖胎模监理细则.docx VIP
- 2025年中国水上运输船舶行业市场全景调研及投资规划建议报告.docx
- 火力发电厂机组A级检修安全监理细则.pdf VIP
- Q/GDW 13007.12-2018 110kV油浸式电力变压器采购标准(第12部分:110kV80MVA三相三绕组电力变压器专用技术规范).pdf VIP
- 化学危险品的认知与防护.ppt VIP
- 青岛版二年级上册期中考试数学试卷.doc VIP
- 中国人的九种体质-完整版中国人的九种体质-完整版.doc VIP
- GB50235-2010 工业金属管道工程施工规范.pdf VIP
- 医务科【住院病历质控检查评分表】标准规范人民医院及中医医院二甲三甲等级评审用模板.docx
原创力文档


文档评论(0)