• Java锁示例


    以下是一段多线程锁机制示例代码:

     1 package lock;
     2 
     3 import java.util.concurrent.locks.Lock;
     4 import java.util.concurrent.locks.ReentrantLock;
     5 
     6 public class ThreadTest {
     7     private int j;
     8     private Lock lock = new ReentrantLock();
     9     
    10     public static void main(String[] args){
    11         ThreadTest tt = new ThreadTest();
    12         for (int i=0; i<2; i++){
    13             new Thread(tt.new Adder()).start();
    14             new Thread(tt.new Subtractor()).start();
    15         }
    16     }
    17     
    18     private class Subtractor implements Runnable{
    19         public void run(){
    20             while (true){
    21                 
    22                 lock.lock();
    23                 
    24                 try{
    25                     System.out.println("j--=" + j--);
    26                 }finally{
    27                     lock.unlock();
    28                 }
    29             }
    30         }
    31     }
    32     
    33     private class Adder implements Runnable{
    34         public void run(){
    35             while(true){
    36                 
    37                 lock.lock();
    38                 try{
    39                     System.out.println("j++" + j++);
    40                 }finally{
    41                     lock.unlock();
    42                 }
    43             }
    44         }
    45     }
    46 }
  • 相关阅读:
    ContextMenuStrip 类
    ToolStripMenuItem
    ubuntu16.04下安装cuda8.0
    插入排序
    Python *args **kw
    python面向对象编程
    0/1背包问题(回溯法)
    Python decorator装饰器
    Python 函数式编程
    分治策略(求解递归式的方法)
  • 原文地址:https://www.cnblogs.com/seasondaily/p/7718703.html
Copyright © 2020-2023  润新知