一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java鎖機制Lock用法示例

Java鎖機制Lock用法示例

2021-05-27 13:58u013063153 Java教程

這篇文章主要介紹了Java鎖機制Lock用法,結合具體實例形式分析了Java鎖機制的相關上鎖、釋放鎖、隱式鎖、顯式鎖等概念與使用技巧,需要的朋友可以參考下

本文實例講述了java鎖機制lock用法。分享給大家供大家參考,具體如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package com.expgiga.juc;
import java.util.concurrent.locks.lock;
import java.util.concurrent.locks.reentrantlock;
/**
 * 一、用于解決多線程安全問題的方式:
 * 1.同步代碼塊 synchronized 隱式鎖
 * 2.同步方法 synchronized 隱式鎖
 * 3.同步鎖lock (jdk1.5以后) 顯示鎖
 * 注意:顯示鎖,需要通過lock()方式上鎖,必須通過unlock()方式進行釋放鎖
 */
public class testlock {
  public static void main(string[] args) {
    ticket ticket = new ticket();
    new thread(ticket, "1號窗口").start();
    new thread(ticket, "2號窗口").start();
    new thread(ticket, "3號窗口").start();
  }
}
class ticket implements runnable {
  private int tick = 100;
  private lock lock = new reentrantlock();
  @override
  public void run() {
    while (true) {
      lock.lock();
      try {
        if (tick > 0) {
          try {
            thread.sleep(200);
          } catch (interruptedexception e) {
            e.printstacktrace();
          }
          system.out.println(thread.currentthread().getname() + " 完成售票,余票為 " + --tick);
        }
      } finally {
        lock.unlock();
      }
    }
  }
}

運行結果:

1號窗口 完成售票,余票為 99
2號窗口 完成售票,余票為 98
2號窗口 完成售票,余票為 97
2號窗口 完成售票,余票為 96
2號窗口 完成售票,余票為 95
3號窗口 完成售票,余票為 94
1號窗口 完成售票,余票為 93
1號窗口 完成售票,余票為 92
1號窗口 完成售票,余票為 91
1號窗口 完成售票,余票為 90
1號窗口 完成售票,余票為 89
1號窗口 完成售票,余票為 88
1號窗口 完成售票,余票為 87
1號窗口 完成售票,余票為 86
2號窗口 完成售票,余票為 85
3號窗口 完成售票,余票為 84
1號窗口 完成售票,余票為 83
2號窗口 完成售票,余票為 82
3號窗口 完成售票,余票為 81
1號窗口 完成售票,余票為 80
1號窗口 完成售票,余票為 79
1號窗口 完成售票,余票為 78
1號窗口 完成售票,余票為 77
1號窗口 完成售票,余票為 76
1號窗口 完成售票,余票為 75
1號窗口 完成售票,余票為 74
1號窗口 完成售票,余票為 73
1號窗口 完成售票,余票為 72
2號窗口 完成售票,余票為 71
2號窗口 完成售票,余票為 70
2號窗口 完成售票,余票為 69
2號窗口 完成售票,余票為 68
3號窗口 完成售票,余票為 67
1號窗口 完成售票,余票為 66
1號窗口 完成售票,余票為 65
1號窗口 完成售票,余票為 64
1號窗口 完成售票,余票為 63
1號窗口 完成售票,余票為 62
1號窗口 完成售票,余票為 61
2號窗口 完成售票,余票為 60
2號窗口 完成售票,余票為 59
3號窗口 完成售票,余票為 58
3號窗口 完成售票,余票為 57
1號窗口 完成售票,余票為 56
1號窗口 完成售票,余票為 55
2號窗口 完成售票,余票為 54
2號窗口 完成售票,余票為 53
2號窗口 完成售票,余票為 52
3號窗口 完成售票,余票為 51
1號窗口 完成售票,余票為 50
1號窗口 完成售票,余票為 49
1號窗口 完成售票,余票為 48
1號窗口 完成售票,余票為 47
1號窗口 完成售票,余票為 46
1號窗口 完成售票,余票為 45
2號窗口 完成售票,余票為 44
3號窗口 完成售票,余票為 43
3號窗口 完成售票,余票為 42
3號窗口 完成售票,余票為 41
3號窗口 完成售票,余票為 40
3號窗口 完成售票,余票為 39
1號窗口 完成售票,余票為 38
2號窗口 完成售票,余票為 37
2號窗口 完成售票,余票為 36
2號窗口 完成售票,余票為 35
2號窗口 完成售票,余票為 34
2號窗口 完成售票,余票為 33
2號窗口 完成售票,余票為 32
2號窗口 完成售票,余票為 31
3號窗口 完成售票,余票為 30
1號窗口 完成售票,余票為 29
1號窗口 完成售票,余票為 28
1號窗口 完成售票,余票為 27
1號窗口 完成售票,余票為 26
1號窗口 完成售票,余票為 25
1號窗口 完成售票,余票為 24
1號窗口 完成售票,余票為 23
1號窗口 完成售票,余票為 22
1號窗口 完成售票,余票為 21
1號窗口 完成售票,余票為 20
1號窗口 完成售票,余票為 19
1號窗口 完成售票,余票為 18
1號窗口 完成售票,余票為 17
1號窗口 完成售票,余票為 16
1號窗口 完成售票,余票為 15
2號窗口 完成售票,余票為 14
2號窗口 完成售票,余票為 13
2號窗口 完成售票,余票為 12
3號窗口 完成售票,余票為 11
3號窗口 完成售票,余票為 10
3號窗口 完成售票,余票為 9
1號窗口 完成售票,余票為 8
1號窗口 完成售票,余票為 7
1號窗口 完成售票,余票為 6
1號窗口 完成售票,余票為 5
2號窗口 完成售票,余票為 4
3號窗口 完成售票,余票為 3
1號窗口 完成售票,余票為 2
2號窗口 完成售票,余票為 1
2號窗口 完成售票,余票為 0

希望本文所述對大家java程序設計有所幫助。

原文鏈接:https://blog.csdn.net/u013063153/article/details/76407233

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产 国语对白 露脸正在播放 | 精品区卡一卡2卡三免费 | 久久视频在线视频观看精品15 | 亚洲丰满模特裸做爰 | 无限在线看免费视频大全 | 插得好爽 | 国产高清经典露脸3p | 亚洲国产精品网站久久 | 日本色淫 | 亚洲乱人伦在线 | 免费的网址 | 国产日韩高清一区二区三区 | hd在线观看免费高清视频 | 日本一区三区 | 美女隐私部位视频网站 | 五月色婷婷久久综合 | 国产精品久久久久久久久久久久久久 | 男女乱淫真视频播放网站 | 天天综合色天天综合 | 亚洲AV人无码综合在线观看蜜桃 | 肉宠文很肉到处做1v1 | 五月婷婷在线免费观看 | 日韩欧美亚洲一区二区综合 | 国产乱叫456在线 | 欧美男人天堂 | xxxx在线视频 | 日韩欧免费一区二区三区 | 国产在线激情视频 | 激情综合 | 国产美女屁股直流白浆视频无遮挡 | 大肥臀风间由美 中文字幕 大东北chinesexxxx露脸 | 亚洲AV中文字幕无码久久 | 双性np玩烂了np欲之国的太子 | 国产拍拍视频一二三四区 | caoporen在线视频入口 | 色网在线观看 | 韩国三级hd中文字幕李采潭 | 日韩在线视频一区二区三区 | 国产欧美曰韩一区二区三区 | 亚洲免费色 | 亚洲乱亚洲乱妇41p国产成人 |