当前位置: 首页 > news >正文

免费直播网站开发常熟经济技术开发区人才网

免费直播网站开发,常熟经济技术开发区人才网,东莞产品网站建设公司,视频网站开发前景如何线程联合 当前线程邀请调用方法的线程优先执行#xff0c;在调用方法的线程执行结束之前#xff0c;当前线程不能再次执行。线程A在运行期间#xff0c;可以调用线程B的join()方法#xff0c;让线程B和线程A联合。这样#xff0c;线程A就必须等待线程B执行完毕后#xf…线程联合 当前线程邀请调用方法的线程优先执行在调用方法的线程执行结束之前当前线程不能再次执行。线程A在运行期间可以调用线程B的join()方法让线程B和线程A联合。这样线程A就必须等待线程B执行完毕后才能继续执行。 join方法的使用 join()方法就是指调用该方法的线程在执行完run()方法后再执行join方法后面的代码即将两个线程合并用于实现同步控制。 class A implements Runnable{private Thread b;public A(Thread b){this.b b;}Overridepublic void run() {for(int i0;i10;i){System.out.println(Thread.currentThread().getName() A i);if(i 5){try {this.b.join();} catch (InterruptedException e) {e.printStackTrace();}}try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}} }class B implements Runnable{Overridepublic void run() {for(int i0;i20;i){System.out.println(Thread.currentThread().getName() B i);try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}} }public class TestJoinThread {public static void main(String[] args) {Thread t1 new Thread(new B());Thread t new Thread(new A(t1));t.start();t1.start();for(int i0;i10;i){System.out.println(Thread.currentThread().getName() i);if(i 2){try {t.join();} catch (InterruptedException e) {e.printStackTrace();}}try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}} } 线程联合案例 需求 实现爸爸让儿子买烟。 /*** 儿子买烟线程*/ class SonThread implements Runnable{Overridepublic void run() {System.out.println(儿子出门买烟);System.out.println(儿子买烟需要10分钟);for(int i0;i10;i){System.out.println(第i分钟);try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}System.out.println(儿子买烟回来了);} }/*** 爸爸抽烟线程*/ class FatherThread implements Runnable{Overridepublic void run() {System.out.println(爸爸想抽烟发现烟抽完了);System.out.println(爸爸让儿子去买一包红塔山);Thread t new Thread(new SonThread());t.start();System.out.println(等待儿子买烟回来);try {t.join();} catch (InterruptedException e) {e.printStackTrace();System.out.println(爸爸出门找儿子);System.exit(1);}System.out.println(爸爸高兴的接过烟并把零钱给了儿子);} }public class TestJoinDemo {public static void main(String[] args) {System.out.println(爸爸和儿子买烟的故事);Thread t new Thread(new FatherThread());t.start();} } Thread类中的其他常用方法 获取线程名称getName() 方式一 this.getName()获取线程名称该方法适用于继承Thread实现多线程方式。 class GetName1 extends Thread{Overridepublic void run() {System.out.println(this.getName());} } 方式二 Thread.currentThread().getName()获取线程名称该方法适用于实现Runnable接口实现多线程方式。 class GetName2 implements Runnable{Overridepublic void run() {System.out.println(Thread.currentThread().getName());} } 设置线程的名称setName() 方式一 通过构造方法设置线程名称。 class SetName1 extends Thread{public SetName1(String name){super(name);}Overridepublic void run() {System.out.println(this.getName());} }public class SetNameThread {public static void main(String[] args) {SetName1 setName1 new SetName1(SetName1);setName1.start();} } 方式二 通过setName()方法设置线程名称。 class SetName2 implements Runnable{Overridepublic void run() {System.out.println(Thread.currentThread().getName());} } public class SetNameThread {public static void main(String[] args) {Thread thread new Thread(new SetName2());thread.setName(SetName2);thread.start();} } 判断线程是否存活isAlive() isAlive()方法 判断当前的线程是否处于活动状态。 活动状态是指线程已经启动且尚未终止线程处于正在运行或准备开始运行的状态就认为线程是存活的。 class Alive implements Runnable{Overridepublic void run() {for(int i0;i4;i){System.out.println(Thread.currentThread().getName() i);try {Thread.sleep(500);} catch (InterruptedException e) {e.printStackTrace();}}} }public class TestAliveThread {public static void main(String[] args) {Thread thread new Thread(new Alive());thread.setName(Alive);thread.start();System.out.println(thread.getName() thread.isAlive());try {Thread.sleep(4000);} catch (InterruptedException e) {e.printStackTrace();}System.out.println(thread.getName() thread.isAlive());} }
http://www.hkea.cn/news/14590571/

相关文章:

  • 凡科网站怎么关闭建设中免费网站入口在哪
  • 做淘宝推广怎样网站合适南宁北京网站建设
  • 做网站阜阳网站源码下载后怎么布置
  • 一浪网站建设文字图片在线制作生成
  • 宁波企业网站制作公司期刊网站源码
  • 网站搭建岗位及要求挂机宝怎么做网站
  • 网站开发私单哪里接杭州做网站比较出名的公司有哪些
  • 申请学校网站建设申请书网站权重怎么提升
  • 设计网站都有什么购物网站后台管理系统
  • wordpress 子主题入口息烽县抖音seo推广
  • 网站获取访客公路建设项目可行性研究报告编制办法哪个网站查最新版
  • c 做网站开发海外网新闻
  • 网站备案 2016做断桥铝最知名的网站
  • 道滘东莞网站建设一个中介平台网站的建设费
  • 淄博英文网站建设前端后端分别是什么意思
  • 网站开发网络课程怎样给自己网站做反链
  • 建设网站需要几部分做网站 技术
  • 中国物流企业网站建设问题wordpress 关闭畅言
  • 住房与城乡建设部建设环境工程技术中心网站查工程中标信息哪个网站
  • 建设网站的企业邮箱网站建设服务最火的推广软件
  • 响应式中文网站欣赏杭州网站案列
  • 做试卷挣钱的网站怎么和客户推广说网站建设语
  • 无锡商业网站建设群艺馆网站建设方案
  • 岗巴网站建设如何盗取网站
  • 郴州网站网站建设智慧企业管理平台
  • 网站建设课程报告论文最有效的app推广方式有哪些
  • 家里电脑可以做网站服务器吗站长工具seo排名查询
  • 富阳建设局网站电话微信广告投放推广平台
  • 郑州网站建设哪里好外贸一般上什么网站
  • 八亿建站千博企业网站管理系统2013