“Synchronized”的版本间的差异

来自姬鸿昌的知识库
跳到导航 跳到搜索
 
第1行: 第1行:
 
=== 最简单的情况 ===
 
=== 最简单的情况 ===
 
多线程操作对象时,为了不产生数据紊乱,一个线程在开始正式操作对象之前,要先给对象加个锁,这样其他线程也想操作这个对象时看到锁就知道这个对象已经有一个线程在操作了,就会等待。
 
多线程操作对象时,为了不产生数据紊乱,一个线程在开始正式操作对象之前,要先给对象加个锁,这样其他线程也想操作这个对象时看到锁就知道这个对象已经有一个线程在操作了,就会等待。
 +
 +
加锁的目的是为了保证同一时刻只有一个线程能够访问对象,避免线程之间的竞争,从而确保对象状态的正确性。

2023年2月11日 (六) 09:39的最新版本

最简单的情况

多线程操作对象时,为了不产生数据紊乱,一个线程在开始正式操作对象之前,要先给对象加个锁,这样其他线程也想操作这个对象时看到锁就知道这个对象已经有一个线程在操作了,就会等待。

加锁的目的是为了保证同一时刻只有一个线程能够访问对象,避免线程之间的竞争,从而确保对象状态的正确性。