读书人

阻塞有关问题

发布时间: 2013-10-30 12:56:21 作者: rapoo

阻塞问题

[解决办法]
板凳阻塞有关问题
[解决办法]
地板阻塞有关问题 三联
[解决办法]
你这个可能会造成死锁的, 鸟线程先阻塞等待主线程唤醒,然后唤醒主线程;主线程也阻塞等待鸟或者鱼线程唤醒再唤醒它们,这个同步顺序会造成条件性的死锁

建议,你的模型可以建得更加简单,把时间控制的部分抽出来放到主线程里,不要混杂在生产者和消费者里
[解决办法]
countdown了之后,鸟线程和鱼线程在wait之前,主线程就notify过了,你就死锁了。

多线程本身控制起来比较麻烦,你不应该把这么多条件变量引入到同步的过程中,很容易出现死锁的,而且这种和时间有关的设计,本身不应该是这样的,你可以试着把time这个东西抽出来专门做一个更新线程来控制,不要在主线程里做同步了

读书人网 >J2SE开发

热点推荐