java-多线程安全问题

1. 安全问题产生原因

  • 多个线程操作共享数据。
  • 操作共享数据的线程代码有多条。当一个线程在执行操作共享数据的多条代码过程中,其他线程参与了计算,就会产生线程安全问题。

 

2. 解决方案

java中用同步代码块将需要同步的代码封装起来,即可解决这个问题。

synchorized(obj)

{

同步代码块;

}

好处:解决了线程安全问题。

缺陷:相对降低效率,其他线程都要判断同步锁的状态。

原文地址:https://www.cnblogs.com/hust-ghtao/p/4669011.html