java线程安全问题的解决方式-lock锁

解决线程安全问题除了用synchronized(同步代码块)、synchronized(同步方法)之外,还能用java.utils下的Lock来解决。

lock拥有synchronized的作用,但比synchronized更加贴切的面向对象
lock锁也称同步锁,有加锁和解锁的方法:
public void lock(); //加锁操作
public void unlock(); //解锁操作

下面我用电影院卖票的事例给大家显示,事例要求在上一篇博客,有兴趣的小伙伴可以查看一下。

在这里插入图片描述
在这里插入图片描述
线程安全问题也得到了解决。

解决线程安全问题的3中方式:

  1. 使用同步代码块
  2. 使用同步方法(包括静态方法和非静态方法)
  3. 使用lock对象来调用lock和unlock
发布了16 篇原创文章 · 获赞 20 · 访问量 289

猜你喜欢

转载自blog.csdn.net/duanyaowei/article/details/105611956