java中使用ReentrantLock实现线程安全
Posted wx6070687864c6e
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中使用ReentrantLock实现线程安全相关的知识,希望对你有一定的参考价值。
如下代码:
class Window4 implements Runnable
private int ticket=100;
//1、先定义一个变量
private ReentrantLock rlock=new ReentrantLock(true);
@Override
public void run()
while (true)
try
//2、加锁
rlock.lock();
if(ticket>0)
try
Thread.sleep(100);
catch (InterruptedException e)
e.printStackTrace();
System.out.println(Thread.currentThread().getName()+":"+ticket);
ticket--;
else
break;
finally
//3、锁释放
rlock.unlock();
代码中有注释。
作者:沐雪
文章均系作者原创或翻译,如有错误不妥之处,欢迎各位批评指正。本文版权归作者,如需转载恳请注明。
如果您觉得阅读这篇博客让你有所收获,
为之网-热爱软件编程 http://www.weizhi.cc/
以上是关于java中使用ReentrantLock实现线程安全的主要内容,如果未能解决你的问题,请参考以下文章
Java多线程之ReentrantLock与Condition
用ReentrantLock和Condition实现线程间通信