大战熟女丰满人妻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();
    }
}
全部教程
主站蜘蛛池模板: 亚洲狠狠97婷婷综合久久久久 | 天天色天天操天天射 | 国产精品视频免费一区二区三区 | 神马我我不卡伦影视 | 日本一二三区免费 | 青青青国产精品国产精品久久久久 | 午夜伦情电午夜伦情影院 | 免费激情网址 | xxxxxx国产精品视频 | 91精品国产色综合久久不卡蜜 | 久久天天躁狠狠躁夜夜中文字幕 | 欧美一级黄色毛片 | 亚洲国产激情在线一区 | 视频在线观看入口一二三2021 | 欧美性天天影院 | 国产视频精品视频 | 日韩一区二区精品久久高清 | 成 人 a v免费视频 | 久热在线视频精品网站 | 亚洲第一中文字幕 | 国产一区亚洲二区 | 久草首页在线观看 | 成人久久久精品乱码一区二区三区 | 成人欧美午夜视频毛片 | 91久久国产| 亚洲水蜜桃久久综合网站 | 久久国产首页 | 一级有奶水毛片免费看 | 日韩精品一区二区三区中文3d | 日韩免费成人 | 亚洲国产精品视频在线观看 | 欧美特黄aaaaaa| 91亚洲国产三上悠亚在线 | 国产一级免费视频 | 一级做a爱片久久毛片 | 久久亚洲综合网 | 国内精品久久久久激情影院 | 久久精品国产久精国产果冻传媒 | 久久精品爱 | 国产精品爱久久久久久久小 | 亚洲精品乱码久久久久 |