Java - 将在功能块上同步对实例属性的访问吗?
Java - Will synchronize on a function block access to instance properties?
如果我有
class A {
public int a;
public synchronized void myMethod() {
Thread.sleep(1000)
}
}
如果一个线程 运行 myMethod
是否会 a
属性 被阻止以访问和修改该 A 实例上的其他线程?
简明扼要地回答您的问题:不,它不会阻止来自 accessing/modifying 属性的其他线程。
详细回答:synchronized
是 Java 线程机制的关键部分。这就是线程相互等待的方式。您还应该看到 Object.wait 和 Object.notify/.notifyAll 。 synchronized是线程执行控制,不是数据泄露
如果我有
class A {
public int a;
public synchronized void myMethod() {
Thread.sleep(1000)
}
}
如果一个线程 运行 myMethod
是否会 a
属性 被阻止以访问和修改该 A 实例上的其他线程?
简明扼要地回答您的问题:不,它不会阻止来自 accessing/modifying 属性的其他线程。
详细回答:synchronized
是 Java 线程机制的关键部分。这就是线程相互等待的方式。您还应该看到 Object.wait 和 Object.notify/.notifyAll 。 synchronized是线程执行控制,不是数据泄露