问题描述
- 多线程开发join()的方法比较透彻和清晰的解释
-
我现在正在自学java中的多线程,但是呢,join()这个方法和sleep()方法,我不是很能理解,哪位大神可以解释一下,最好有个简单的例子,谢谢啦
解决方案
Thread.sleep(1000);
这意思是,如果线程运行到这儿了,线程在这个地方等1秒钟再往下走(精度不准)
sleep就是睡觉意思,这就好理解了
join()简单用法就是等一个线程结束
例如开启个线程做延时操作 Thread myThread1;
在main中调用它
myThread1.start();//启动了
myThread1.join(1000);
System.out.println("我等了它一秒钟后才输出");
给个通俗解释,
你去买东西,我在路上等你,和你先说,我等你一小时,你早来我早走,你不来,一小时后我自已走,就这意思
join有三种不同参数除了上面的
join();
//join(0);//同上意思是你不来,我不走了
myThread1.join(millis, nanos);//我等你一小时加一纳秒(精确)~
上面是通俗用法,还有更多线程处理等待优先级、interrupt、锁等更多内容
多测试自已体会一下,慢慢了解吧~
时间: 2024-10-30 04:06:28