java API------Thread类join()方法

本文详细解析了Java中线程的join方法如何使主线程等待子线程完成。通过一个具体的示例程序展示了join方法的使用场景及效果,帮助读者理解线程同步的基本原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

join方法,“等待该线程终止“。主线程生成并起动了子线程,而子线程里要进行大量的耗时的运算(这里可以借鉴下线程的作用),当主线程处理完其他的事务后,需要用到子线程的处理结果,这个时候就要用到join()方法了。

//摘自ocjp:
public class TestOne implements Runnable {
	public static void main (String[] args) throws Exception {
		Thread t = new Thread(new TestOne());
		t.start();
		System.out.print("Started");
		t.join();
		System.out.print("Complete");
	}
	public void run() {
		for (int i = 0; i < 4; i++) {
			System.out.print(i);
		}
	}
}
What can be a result?
A. Compilation fails.
B. An exception is thrown at runtime.
C. The code executes and prints "StartedComplete".
D. The code executes and prints "StartedComplete0123".
E. The code executes and prints "Started0123Complete".
Answer: E

分析:

执行t.join()后,主线程会等待子线程run()方法执行完成后再执行system.out.println("complete")语句。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值