JAVA——多线程中的join
来源:互联网 发布:linux渗透命令 编辑:程序博客网 时间:2024/06/06 12:55
join描述:
当A线程执行到了B线程的.join()方法时,A就会等待。等B线程都执行完,A才会执行。join可以用来临时加入线程执行。
class Demo implements Runnable{ public void run() { for(int x = 0;x<50;x++) { System.out.println(Thread.currentThread().getName()+"......"+x); } }}
class JoinDemo{ public static void main(String[] args)throws Exception { Demo d = new Demo(); Thread t1 = new Thread(d); Thread t2 = new Thread(d); t1.start(); t1.join(); t2.start(); for(int x = 0;x<60;x++) { System.out.println("mian......"+x); } System.out.println("over"); }}
因为join( )一出现,当主线程运行到t1的时候,主线程就放弃了cpu的执行权,昏睡过去了。等到t1线程也就是Thread-0结束了它才醒过来与Thread-1交替执行:
当修改join的位置:
结果就为:
因为此时主线程只要等Thread-0结束它就醒了。不管Thread-1的状态。因此会出现Thread-1还没结束,主线程就运行的情况。
0 0
- JAVA——多线程中的join
- java多线程 中的join方法
- java多线程——8 fork/join
- Java多线程——Fork/Join框架
- Java多线程——join方法
- java多线程中的join方法详解
- java多线程中的join方法详解
- 深入理解java多线程中的join()
- Java—Java多线程中join方法的理解
- 多线程中的join()
- 多线程中的join方法
- python多线程中的join()
- 多线程中的join()
- 多线程中的Join()方法
- Java多线程4——setDaemon、join、yield
- Java多线程——sleep(),wait(),notify(),notifyAll(),join()
- Java多线程初探——yield()方法与join()方法
- Java多线程(一)——Thread之join()方法
- App安装后不在桌面显示图标
- Weblogic下Java反序列化漏洞检测
- Android:ViewPager详解(异步网络加载图片,带图片缓存,并带导航小圆点)
- 有1000桶酒,其中1桶有毒。而一旦吃了,毒性会在1周后发作。现在我们用小老鼠做实验,要在1周后找出那桶毒酒,问最少需要多少老鼠,如何检测?
- Vim/Vi总结
- JAVA——多线程中的join
- ubuntu开机启动 执行程序
- 网络营销给网站SEO优化带来的帮助有哪些?你知道吗
- Android与H5的交互问题
- BigTable
- Nagios 快速实现数据可视化的几种方式
- linux/unix 下 删除sendmail -bp 邮件队列;查看sendmail发送邮件日志
- apache对象池的使用
- 关于 Spring new出来的对象 与自动注入对象