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

 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 }

 

相关文章:

  • 2021-12-07
  • 2022-01-13
  • 2022-03-09
  • 2021-08-30
  • 2021-09-27
  • 2021-12-12
  • 2022-12-23
猜你喜欢
  • 2021-11-12
  • 2021-08-04
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-06
相关资源
相似解决方案