请问各位大佬既然说sleep不释放锁 可是为什么第一个进入同步锁的线程还没有出去 其他两个线程就跑进来了呢?
因为你锁的是实例对象...这3个对象一人一把锁 运行的时候也获取自己的那把锁 和没锁有什么区别先搞清楚synchronized是怎么用的吧...
你应该synchronized(Thread.class)
synchronized(this) 这里的this是当前的实例对象,你new 了三次,就是三把不同的锁,所以都能进来了
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
3 回答1.7k 阅读✓ 已解决
1 回答2k 阅读✓ 已解决
5 回答12.5k 阅读✓ 已解决
2 回答684 阅读✓ 已解决
1 回答2.6k 阅读✓ 已解决
因为你锁的是实例对象...
这3个对象一人一把锁 运行的时候也获取自己的那把锁 和没锁有什么区别
先搞清楚synchronized是怎么用的吧...