Junit单元测试多线程注意事项

现象:
Junit单元测试多线程,和main方法多线程的区别

方法:
一:在main方法中 开启一个子线程 子线程设置睡眠2秒, 主线程结束之后大约2秒之后控制台就会打印子线程结束语句
Junit单元测试多线程注意事项

二:
我们运行单元测试的时候,得到的结果却是:
junit测试主线程结束
junit测试子线程开始
并未打印“junit测试子线程结束”,
这是由于主线退出后,子线程也立即退出
Junit单元测试多线程注意事项

三:在junit测试主线程执行的时候让主线sleep一段时间:
就可以看到子线程结束的语句
Junit单元测试多线程注意事项

这是由于在缺省的情况下,虚拟机等待所有的线程结束程序才结束。
守护线程例外,会随程序主动结束。