2010-06-01 55 views
3

我可以使用object.wait,object.notifysynchronized blocks來解決生產者消費者類型的問題。同時我可以使用locksconditionsjava.util.concurrent包。我確信我無法理解爲什麼我們需要條件,因爲我們可以使用object.waitnotify使隊列等待某些條件,如隊列爲空或滿。如果我們使用java.util.concurrent.locks.Condition,還有其他好處嗎?Java併發鎖和條件使用

回答

3

This article提供了一個很好的解釋:

正如鎖是 同步的推廣,鎖定框架 包括等待的推廣和 通知稱爲條件。的鎖定對象 充當工廠對象綁定到鎖定條件 變量和 不像標準的等待和 通知方法,可以有與 給定的鎖定相關聯的多於一個 條件變量。

+0

鏈接已死 - > IBM developerWorks Web站點正在維護中。 – 2014-06-01 08:43:44

+1

它確實說'請稍後再試',以保持公平... – 2014-06-01 13:38:54