多线程会出现那些问题

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线程依次进行

 

你可能感兴趣的:(多线程会出现那些问题)