未经许可,不得转载。
synchronized
在 Java 中,synchronized 用于实现线程间的同步,确保多个线程在访问某个共享资源时不会产生数据不一致的问题。它可以用于方法或代码块,通过获取锁来控制访问。当一个线程进入一个 synchronized 方法或块时,它会获得该对象的锁,其他线程在获得锁之前无法进入任何同步的代码块。这种机制能够保证同一时间只有一个线程可以执行同步代码,从而避免了并发访问带来的数据错误。
synchronized锁住的是代码还是对象?
然而,不可简单地认为给方法或者代码段加上 synchronized 就可以完全避免并发问题。
看下面一段代码:
// 定义一个同步类 Sync
class Sync {
// 同步方法 test,保证同一时间只有一个线程可以进入该方法
public
订阅专栏 解锁全文
170万+

被折叠的 条评论
为什么被折叠?



