什么是Java中的“与每个对象关联的隐式锁”?

时间:2019-05-06 17:08:13

标签: java synchronized thread-synchronization

我正在阅读有关Java中的synchronized块的信息,当我阅读时,我们拥有与每个对象关联的那些隐式“锁”(如here中所述),如果我们想象有一个LOCK变量:

private static final Object LOCK = new Object();

据我所知,synchronized (LOCK)块在幕后发生的事情是,如果某个线程(例如,t1访问LOCK对象上的块,则其他线程无法访问它,因为它们可以在t1完成其工作之前,不会从同一对象获得锁,因为t1尚未释放该锁。

但是我仍然不知道这些“锁”到底是什么。它们是纯粹用于同步过程的某种类型的唯一数据/元数据吗?或者我们如何解释/定义它们?

0 个答案:

没有答案