大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Java多線程編程概述
Java多線程的安全問題
Java多線程同步
Java多線程間的通信
Java線程Lock
Java多線程管理
保障線程安全的設計技術
Java鎖的優化及注意事項
Java多線程集合
【Java多線程】單例模式與多線程

Java ReentrantLock使用

調用lock()方法獲得鎖, 調用unlock()釋放鎖。

package com.wkcto.lock.reentrant;

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

/**
 * Lock鎖的基本使用
 */
public class Test02 {
    //定義顯示鎖
    static Lock lock = new ReentrantLock();
    //定義方法
    public static void sm(){
        //先獲得鎖
        lock.lock();
        //for循環就是同步代碼塊
        for (int i = 0; i < 100; i++) {
            System.out.println(Thread.currentThread().getName() + " -- " + i);
        }
        //釋放鎖
        lock.unlock();
    }

    public static void main(String[] args) {
        Runnable r = new Runnable() {
            @Override
            public void run() {
                sm();
            }
        };
        //啟動三個線程
        new Thread(r).start();
        new Thread(r).start();
        new Thread(r).start();
    }
}
package com.wkcto.lock.reentrant;

import java.util.Random;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;

/**
 * 使用Lock鎖同步不同方法中的同步代碼塊
 */
public class Test03 {
    static Lock lock = new ReentrantLock();         //定義鎖對象
    public static void sm1(){
        //經常在try代碼塊中獲得Lock鎖, 在finally子句中釋放鎖
        try {
            lock.lock();        //獲得鎖
            System.out.println(Thread.currentThread().getName() + "-- method 1 -- " + System.currentTimeMillis() );
            Thread.sleep(new Random().nextInt(1000));
            System.out.println(Thread.currentThread().getName() + "-- method 1 -- " + System.currentTimeMillis() );
        } catch (InterruptedException e) {
            e.printStackTrace();
        } finally {
            lock.unlock();          //釋放鎖
        }
    }

    public static void sm2(){
        try {
            lock.lock();        //獲得鎖
            System.out.println(Thread.currentThread().getName() + "-- method 22 -- " + System.currentTimeMillis() );
            Thread.sleep(new Random().nextInt(1000));
            System.out.println(Thread.currentThread().getName() + "-- method 22 -- " + System.currentTimeMillis() );
        } catch (InterruptedException e) {
            e.printStackTrace();
        } finally {
            lock.unlock();          //釋放鎖
        }
    }

    public static void main(String[] args) {
        Runnable r1 = new Runnable() {
            @Override
            public void run() {
                sm1();
            }
        };
        Runnable r2 = new Runnable() {
            @Override
            public void run() {
                sm2();
            }
        };

        new Thread(r1).start();
        new Thread(r1).start();
        new Thread(r1).start();
        new Thread(r2).start();
        new Thread(r2).start();
        new Thread(r2).start();
    }
}
全部教程
主站蜘蛛池模板: 色站综合 | 草莓视频一区二区精品 | 一级片影院 | 色综合伊人色综合网亚洲欧洲 | 久久精品视频7 | 精品成人免费播放国产片 | 福利午夜在线 | 色视频在线观看视频 | 狠狠狠色丁香婷婷综合久久88 | 亚洲六月丁香色婷婷综合久久 | 日韩成人三级 | 欧美又粗又硬又大久久久 | 国产精品久久久久久久hd | 欧美成人一区二区三区在线视频 | 日韩视频 中文字幕 视频一区 | 色婷婷色99国产综合精品 | 曰韩一级片 | 91中文字幕在线一区 | 特一级黄 | 99热精品在线观看 | avtom影院入口四虎 | 久久午夜剧场 | 99se亚洲综合色区 | 久久综合日韩亚洲精品色 | 国产69精品久久久久777 | 欧美性一区二区三区 | 免费观看一级成人毛片软件 | 久久国产自偷自免费一区100 | 婷婷色在线 | 一级黄片一级毛片 | 国产免费69成人精品视频 | 五月伊人网| 国产美女精品在线观看 | 亚洲综合色就色手机在线观看 | 在线日产一区二区 | 日韩一级黄色影片 | 国产精品久久国产三级国不卡顿 | 久久99国产亚洲高清 | 免费日韩精品 | 国产一区二区三区四 | 久久高清影院 |