中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JAVA多線程重入鎖ReentrantLock應用

發布時間:2020-05-31 17:10:54 來源:網絡 閱讀:342 作者:戀上程序員 欄目:編程語言
package concurrent;

import java.util.concurrent.*;
import java.util.concurrent.locks.ReentrantLock;

/**
 * @Auther:zhl
 * @Date:2019/7/13
 * @Description: 并發測試,重入鎖ReentrantLock解決并發問題
 */
public class ConcurrentSample {
    //并發線程數量
    private static int users = 100;
    //訪問次數
    private static int count = 10000;
    //訪問總量
    private static int number = 0;
    //private static CyclicBarrier cyclicBarrier = new CyclicBarrier(10000);
    private static ReentrantLock reentrantLock = new ReentrantLock();

    public static void main(String[] args) throws InterruptedException {
        //定義線程池
        ExecutorService executorService = Executors.newCachedThreadPool();
        //并發量
        //Semaphore semaphore = new Semaphore(users);
        CountDownLatch countDownLatch = new CountDownLatch(count);
        for (int i = 0; i < count; i++) {
            executorService.execute(() -> {
                try {
                    //semaphore.acquire();
                    add();
                    countDownLatch.countDown();
                    //semaphore.release();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            });
        }
        countDownLatch.await();
        executorService.shutdown();
        System.out.println("計數器:" + number);
    }

    public static void add() {
        //加鎖
        reentrantLock.lock();
        number++;
        //解鎖
        reentrantLock.unlock();
    }
}
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

崇州市| 马公市| 荆州市| 苏尼特右旗| 永昌县| 从化市| 新晃| 油尖旺区| 连江县| 会宁县| 湟源县| 江津市| 澄江县| 桑植县| 葫芦岛市| 伊川县| 盖州市| 崇信县| 邹平县| 天祝| 静海县| 龙川县| 海淀区| 两当县| 安吉县| 兰州市| 江阴市| 天气| 孙吴县| 万源市| 大安市| 蒙山县| 定西市| 尖扎县| 曲麻莱县| 张北县| 宣武区| 班戈县| 邵阳县| 九龙县| 伊宁市|