java 线程 join方法

在一个线程中调用下列方法,不会改变该线程运行状态的是A.yield方法B.另一个线程的join方法C.sleep方法D.一个对象的notify方法正确答案:B解析:线程调... 在一个线程中调用下列方法,不会改变该线程运行状态的是
A.yield方法
B.另一个线程的join方法
C.sleep方法
D.一个对象的notify方法

正确答案:B
解析:线程调用yield()方法使线程从运行状态转入可运行状态;线程调用sleep()方法使线程由运行状态转入阻塞状态;线程调用一个对象的notify()方法可使线程从阻塞状态转变为可运行状态。
解析:另一个线程的join方法是使得另一个线程等待,直到本线程结束为止,另一个线程恢复到可运行状态,不会改变本线程运行状态。

题目和解释如上.
但是我的理解不一样

假设现在有两个线程 main 和 Thread-0
在main线程里调用Thread-0的join(). 不应该是main要等Thread-0跑完 main才能跑吗?
展开
 我来答
小童鞋_成er
推荐于2016-04-10 · 知道合伙人数码行家
小童鞋_成er
知道合伙人数码行家
采纳数:4650 获赞数:22879
主要从事J2EE工作,热爱Java,用心讨论技术,共同进步。

向TA提问 私信TA
展开全部
您好,提问者:
当main线程调用到Thread-0的时候,这个时候main线程是等待状态,直到join守护完毕才执行下面的东西。
join方法是先将线程池中的其它线程wait状态,join执行完毕,又调用了notifyAll()唤醒所有线程中的线程。
更多追问追答
追问
请问一下 你觉得答案是B吗?
追答
选择B是正确的。
notify肯定是不对的,因为notfiy是唤醒,线程处于等待状态才会去notify,当调用notify的话已经改变了线程状态了。
而join是守护线程执行完毕,不会改变其自身状态。
嘸限畅赽
推荐于2018-04-26 · TA获得超过357个赞
知道小有建树答主
回答量:413
采纳率:50%
帮助的人:110万
展开全部
你采纳的答案第一句话就是错误的.
join方法是 谁调用暂停谁

你的那道考试题,答案B,当另一个线程Join方法被调用时,停的是另一个线程,所以不会影响 本线程的运行状态。

按照他的解释 main都等待thread-0了,已经改变了main的状态, 还选B?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千锋教育
2015-12-02 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
*
 * public final void join():等待该线程终止。 
 */
public class ThreadJoinDemo {
public static void main(String[] args) {
ThreadJoin tj1 = new ThreadJoin();
ThreadJoin tj2 = new ThreadJoin();
ThreadJoin tj3 = new ThreadJoin();

tj1.setName("李渊");
tj2.setName("李世民");
tj3.setName("李元霸");

tj1.start();
try {
tj1.join();
} catch (InterruptedException e) {
e.printStackTrace();
}

tj2.start();
tj3.start();
}
}
class ThreadJoin extends Thread {
@Override
public void run() {
for (int x = 0; x < 100; x++) {
System.out.println(getName() + ":" + x);
}
}
}
只有在tj1线程执行完后其他线程才开始执行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-09-06
展开全部
这个解释是有点扯淡,我觉得应该是 D。 notify是通知其他阻塞的线程可以转变状态。
追问
我也选是D 但是看答案是B 就纠结了
追答
你的好评答案你能看懂?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-09-06
展开全部
main是死的最快的线程。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式