2012-10-30 44 views
0

我正在嘗試爲我的排隊問題找到解決方案。在典型的情況下,生產者將某些東西放在隊列中,並且消費者將其關閉。如果我們有一個也消費的生產者和一個最初從隊列中取出某些東西,然後將某些東西(如結果)放回隊列的消費者,那麼如何呢?因此,如果你遵循,就有雙向流動。是否有可能同步兩個線程來有效地做到這一點?天真地說,我已經在我的一個線程的運行方法中放了一個循環,只是發現另一個線程只會運行一次然後死亡。如果這看起來模糊,請道歉。希望有人能指點我正確的方向生產者/消費者場景中的雙向流程

歡呼聲

+0

生產者應計算它預期的迴應數量 –

回答

2

如果你只是使用ConcurrentLinkedQueue,你可以從任何線程放置和取出它。生產者和消費者線程之間沒有嚴格的區別,隊列對象保證了每個操作的一致性。