Thread--对象锁猜想

Posted MicroCat

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Thread--对象锁猜想相关的知识,希望对你有一定的参考价值。

堆内存地址未发生变化:

  对象堆内存地址没发生变化的情况下,即值是否与变仍然是同一把锁。

 

堆内存地址变化:

  在线程尝试进入过同步代码时复制当前对象锁副本。

  在复制对象锁副本之后改变对象指向不影响对象锁,对象副本相同,即锁相同。

  在复制对象锁副本之前改变对象指向,此时对象锁实质上已经是两把对象锁。

  复制对象锁的时间为线程进入同步代码块时间。

 

仅仅是猜想。

 

  

以上是关于Thread--对象锁猜想的主要内容,如果未能解决你的问题,请参考以下文章

Thread实现多线程死锁同步锁

Thread-线程的同步

线程锁

2.2.16锁对象的改变

Thread类线程结束会唤醒使用其对象做锁而睡眠的线程

颠覆我的Thread.join()