Ary*_*yan 3 junit multithreading unit-testing
我的应用程序中有客户端和服务器线程.当我将这些应用程序作为独立应用程序运行时,这些线程可以正常通
但是当我将客户端作为JUnit和服务器作为独立运行时,客户端线程会在几秒钟内死亡.
我无法得到,为什么这样不同的行为.
当JUnit运行器终止时,所有生成的线程等也被终止(因为它很可能在单独的JVM实例中运行).
这是一篇(相当古老的)文章,描述了您遇到的问题(它推荐的GroboUtils库似乎很久以前就被抛弃了).而另一个,最近,使用新的Java并发架构一个更现代的解决方案.
后一种解决方案的要点是它通过执行程序运行线程,执行程序通过Future
s 发布运行结果.并且Future.get
阻塞直到线程完成任务,自动保持JUnit测试活着.您可以根据自己的情况调整此技巧.
归档时间: |
|
查看次数: |
5145 次 |
最近记录: |