【发布时间】:2016-02-24 07:17:56
【问题描述】:
我听说对对象使用synchronized 关键字会创建一个等待池,其中存储与该对象关联的等待线程。它在内存中是如何表示的?
【问题讨论】:
标签: java multithreading wait
我听说对对象使用synchronized 关键字会创建一个等待池,其中存储与该对象关联的等待线程。它在内存中是如何表示的?
【问题讨论】:
标签: java multithreading wait
您可以查看有关 Intrinsic Locks and Synchronization 的 Java 文档
每个对象都有一个与之关联的内在锁。按照惯例, 需要对对象的独占和一致访问的线程 字段必须在访问之前获取对象的内在锁 它们,然后在完成它们后释放内在锁。一个 据说线程在它拥有的时间之间拥有内在锁 获取锁并释放锁。只要一个线程拥有一个 内在锁,没有其他线程可以获取相同的锁。另一个 线程在尝试获取锁时会阻塞。
还有这个:
【讨论】: