- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
J的ava多线程技术及案例
Java多线程技术及案例进程和线程: 进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1–n个线程。 线程:同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。 线程和进程一样分为五个阶段:创建、就绪、运行、阻塞、终止。 多进程是指操作系统能同时运行多个任务(程序)。 多线程是指在同一程序中有多个顺序流在执行。Java中多线程的多种实现方式Java中有多种多线程实现方法,主要是继承java.lang.Thread类的方法和java.lang.Runnable接口的方法。继承Thread类Thread是java.lang包中的一个类,从这个类中实例化的对象代表线程,启动一个新线程需要建立一个Thread实例。使用Thread类启动新的线程的步骤如下:实例化Thread对象调用start()方法启动线程构造方法:public Thread(String threadName);public Thread();例程:publicclassThread1extendsThread{//定义一个类继承Threadprivateint count=1000;publicvoid run(){//重写run方法while(true){System.out.print(count+ );if(--count==0){return; } } }publicstaticvoid main(String[] args){ Thread1 th1=new Thread1();//实例化继承了Thread的类 Thread1 th2=newThread1(); th1.start();//调用start()方法,th2.start();for(int i=0;i1000;i++){System.out.print(A ); } }}以上例子中,Thread1继承了Thread并重写了run()方法,在主程序中,首先实例化Thread1对象,然后调用start()方法运行run()方法。另外主程序本身是一个线程,再调用两个新线程,根据打印数据,可以看到数字和字母交替输出,而且两组数字序列也穿插出现,说明三个线程都在同步运行。?Java中所有的线程都是同时启动的,至于什么时候,哪个先执行,完全看谁先得到CPU的资源。另外,在java中,每次程序运行至少启动2个线程。一个是main线程,一个是垃圾收集线程。因为每当使用java命令执行一个类的时候,实际上都会启动一个JVM,每一个JVM就是在操作系统中启动了一个进程。Runnable接口实现Runnable接口程序会创建一个Thread对象,并将Runnable对象与Thread对象相关联。使用Runable接口启动新的线程的步骤如下:建立实现Runnable接口的类使用参数为Runnable对象的构造方法创建Thread实例调用start()方法启动线程构造方法:public Thread(Runnable r);public Thread(Runnable r,String name);例程:classThread2implementsRunnable{private String name;public Thread2(String name) {=name; } @Overridepublicvoid run() {for (int i = 0; i 5; i++) {System.out.println(name + 运行 : + i); } }}publicclassMain {publicstaticvoid main(String[] args) {new Thread(new Thread2(C)).start();//new Thread2(C)创建的是Runnable对象,new Thread(new Thread(C))是实例化与Runnable对象相关联的Thread对象new Thread(new Thread2(D)).start(); }}上例主程序中,new Thread2(“C”)创建的是Runnable对象,new Thread(new Thread(“C”))是实例化与Runnable对象相关联的Thread对象。?Thread2类通过实现Runnable接口,使得该类有了多线程类的特征。run方法是多线程程序的一个约定。所有的多线程代码都在run方法里面。Thread和Runnable的区别与联系联系:?我
您可能关注的文档
- iReport table 参数的传递使用说明.pdf
- iQuickTest培训课的程 - 白盒测试框架(Gtest C ).pdf
- ISO 1302-2002 Ch.产品几的何规范——技术产品文档中表面特征的表示法第四版.pdf
- ISO2015项的目策划书09.pdf
- iResearch-2015中国人工智能应用市场研究的报告-0129.pdf
- IRIS检的查表.pdf
- ISO9001质量管理体系文件编写与培训的教程(好东西).ppt
- iTop4412的的uboot第一阶段.doc
- IS的O9001:2015CQC转换培训测试试题及答案(一).pdf
- ITSM验收的手册V2.doc
- 2025年Meta元宇宙生态构建与虚拟现实技术专利分析报告.docx
- 《湿地生态修复对生物多样性保护的生态修复技术产业政策与产业竞争力提升研究》教学研究课题报告.docx
- 高中数学教学中学生抽象逻辑思维培养的实证研究教学研究课题报告.docx
- 2024年河北省邯郸市曲周县槐桥乡招聘社区工作者真题参考答案详解.docx
- 《医学影像AI识别技术在妇产科疾病诊断中的准确性评价》教学研究课题报告.docx
- 数字化教学促进小学体育教师教学技能与素养培养研究教学研究课题报告.docx
- 以数字化评价为抓手,提升小学生自我效能感的实践路径研究教学研究课题报告.docx
- 2025年氢能应用于重型矿用车辆的替代方案研究.docx
- 高中物理实验:洗涤剂去污过程中的表面张力实验研究教学研究课题报告.docx
- 初中古诗词教学中的语言文字运用能力培养策略研究与实践教学研究课题报告.docx
最近下载
- 小学奥数教师版(合辑)1-1-2-3 分数四则混合运算综合.pdf VIP
- 小学奥数合辑(学生用书)1-1-2-3 分数四则混合运算综合.pdf VIP
- 心电监护操作流程课件(PPT 34张).pptx VIP
- 高考数学三年真题(2023-2025年)《统计与概率》真题分类汇编含答案.docx VIP
- 高斯小学奥数五年级上册含答案_分数应用题.doc VIP
- 药食同源发酵项目可行性研究报告建议书新建申请备案案例范文解读.doc VIP
- 2024年广东省高考政治试卷(真题+答案).pdf VIP
- 小学数学 奥数思维《计算:小数的巧算》专项训练2(含解析).docx VIP
- 智慧城市排水防涝系统改造与优化创新研究.docx VIP
- 核心稳定性与核心力量训练.ppt
文档评论(0)