黑莓中隔行同步是什么意思,为什么会发生这个错误
最佳答案
隔行同步是指有两个锁以不同的顺序被 synchronized
锁定。因此,如果您有 lock a
和 lock b
并执行以下操作:
synchronized(a) {
// Do stuff ...
synchronized(b) {
// Do stuff ...
}
}
然后在另一个线程中:
synchronized(b) {
// Do stuff ...
synchronized(a) {
// Do stuff ...
}
}
这将是隔行同步。这种情况可能会导致死锁,因此应不惜一切代价避免这种情况。
希望这可以帮助。