挂在锁上的线程的成本

时间:2017-07-18 09:42:25

标签: java android multithreading locking

情景:

  • 当app在前台时,一个线程正在轮询某个事件

  • 第二个线程想要在第一个线程之后调用方法should 使用事件总线通知第二个线程关于该特定事件

  • 第二个线程持有锁,直到第一个线程通知

  • app已落后,但第二个帖子仍然持有该锁

问题: 在第二个线程上持有锁的隐藏成本是多少?有什么值得担心的吗?

1 个答案:

答案 0 :(得分:1)

从一般角度来看,您始终希望避免死锁情况。确保第二个线程始终有一种方法可以放弃锁定。

看看这里有一个很好的死锁示例。 https://docs.oracle.com/javase/tutorial/essential/concurrency/deadlock.html