循環創建10個線程并輸出,但線程有時是5個有時是6個,數量好像不是固定的10個
for(int?i=0;?i<10;?i++){ ????new?Thread(new?Runnable()?{ ????????public?void?run()?{ ????????????Bean?bean?=?context.getBean("testBean",?Bean.class); ????????????System.out.println("bean="+bean); ????????} ????}).start(); }
輸出有時候是5條有時候是6條有時候甚至沒有,求解
2019-09-16
因為Junit單元測試時,如果主線程執行結束則此單元測試也就結束了,這個時候子線程可能還沒執行完就被殺死了。所以在你測試過程中輸出有時候是5條有時候是6條有時候甚至沒有是正常的。那么解決此問題的思路也就有了:
要么直接粗暴的讓主線程執行sleep
使用CountDownLatch
2021-05-16
你沒有使用junit的Test類進行測試,請檢查
2019-07-06
數量怎么可能不是10呢你for的都是10,你好好試試看
2019-07-03
Junit單元測試不支持多線程,可以寫在main方法,也可以寫在測試類里,但是需要讓主線程sleep