Java锁示例
Posted 四季万花筒
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 }
以上是关于Java锁示例的主要内容,如果未能解决你的问题,请参考以下文章
Java并发多线程编程——锁绑定多个条件Condition示例