最近在研究java多线程,这篇文章主要是介绍一些线程之间的通信:
1:join 的方式,一个线程等待另一个线程执行完毕后在执行,可以控制线程执行的顺序;
场景:B线程要在A线程完成后才开始任务:
不做任何控制的情况下的线程代码如下:
@Test public void threadTest4() throws InterruptedException, ExecutionException { // 线程A final Thread threadA = new Thread(new Runnable() { @Override public void run() { printNum("线程A"); } }); // 线程B Thread threadB= new Thread(new Runnable() { @Override public void run() { // try { // threadA.join(); // } catch (InterruptedException e) { // e.printStackTrace(); // } printNum("线程B"); } }); threadA.start(); threadB.start(); Thread.sleep(1000); }