1.线程执行顺序
各个线程执行的顺序不同,会导致执行的结果不一致。
解决:可以用join方法实现。
public class Test {
public static void main(String[] args) throws InterruptedException {
Thread t1 = new Thread(new MyThread1());
Thread t2 = new Thread(new MyThread2());
Thread t3 = new Thread(new MyThread3());
t1.start();
t1.join();
t2.start();
t2.join();
t3.start();
}
}
join()阻塞的主线程,当子线程 t1 运行完毕后,主线程结束等待继续运行t2线程依次进行。