java多線程測(cè)試用例

public class ConcurrentTest {
    /**
     * 多線程測(cè)試用例
     * @param threadCount 開啟線程數(shù)
     * @param run 線程執(zhí)行方法
     * @param finish 線程全部執(zhí)行結(jié)束后運(yùn)行方法
     */
    public void begin(int threadCount,Run run,Finish finish){
        CountDownLatch countDownLatch = new CountDownLatch(1);
        ExecutorService fixedThreadPool = Executors.newFixedThreadPool(threadCount);
        for (int i = 0; i < threadCount; i++) {
            fixedThreadPool.execute(()->{
                try {
                    countDownLatch.await();
                    run.run();
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            });
        }
        countDownLatch.countDown();
        fixedThreadPool.shutdown();
        while (!fixedThreadPool.isTerminated()){ }
        finish.finish();
    }
}
  • 運(yùn)行接口
public interface Run {
    void run();
}
  • 結(jié)束接口
public interface Finish {
    void finish();
}
  • 測(cè)試
public class Test {
    static int m = 0;
    public static void main(String[] args) {
        AtomicInteger integer = new AtomicInteger(0);
        new ConcurrentTest().begin(10,()->{
            for (int i = 0; i < 10000; i++) {
//                integer.addAndGet(1);
                m++;
            }
        },()-> System.out.println(m));
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 文章來自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鵬閱讀 9,387評(píng)論 2 126
  • 1****、問:你在測(cè)試中發(fā)現(xiàn)了一個(gè)bug****,但是開發(fā)經(jīng)理認(rèn)為這不是一個(gè)bug****,你應(yīng)該怎樣解決? 首...
    蛋炒飯_By閱讀 5,403評(píng)論 1 94
  • 黑盒測(cè)試案例設(shè)計(jì)技術(shù)篇 1 概述 本章介紹黑盒測(cè)試的概念和進(jìn)行黑盒測(cè)試的目的與意義,及關(guān)于等價(jià)類劃分、邊界值分析、...
    西邊人閱讀 17,357評(píng)論 0 41
  • 1.測(cè)試與軟件模型 軟件開發(fā)生命周期模型指的是軟件開發(fā)全過程、活動(dòng)和任務(wù)的結(jié)構(gòu)性框架。軟件項(xiàng)目的開發(fā)包括:需求、設(shè)...
    宇文臭臭閱讀 6,884評(píng)論 5 101
  • 1.測(cè)試與軟件模型 軟件開發(fā)生命周期模型指的是軟件開發(fā)全過程、活動(dòng)和任務(wù)的結(jié)構(gòu)性框架。軟件項(xiàng)目的開發(fā)包括:需求、設(shè)...
    Mr希靈閱讀 22,433評(píng)論 7 278

友情鏈接更多精彩內(nèi)容