解决JUnit测试多线程,程序提前退出问题

问题描述

使用JUnit测试多线程问题,新打开的线程还没运行完成,整个进程就提前退出了

问题原因

JUnit运行环境中,假如主线程结束了,进程就会直接退出,不会等待其它线程完成

解决方法

通过一些方法阻塞主线程,等待其它线程执行完成,例如:

  • System.in.read()
  • Thread.sleep(5000)
  • thread.join()
  • countDownLatch.await()