2016-09-24 48 views

回答

4

一个常见的例子是在两个账户对象之间转移资金,其中一个被信号量锁定。

我怎么能这样做一个thead在java中同时获取两个信号量?

一个明显的答案是锁定一个,然后锁定另一个。然而这造成了僵局。

相反,您应该以某种方式对锁定进行排序(比如基于帐户中的唯一ID),以便始终以相同的顺序锁定它们。

相关问题