我遇到的問題是像單個生產者多個消費者問題。除了消費者是「不同的」,我需要一種「偷看」新產品的方式(以檢查它是誰)。從Java攔截之前檢查隊列
問題實際上是服務於多個客戶端線程的單個服務器線程。客戶端將請求信息,然後服務器應回覆此客戶端
我該怎麼做?一個可能性是一個循環,如:
while (true) {
if (q.peek() ... check here ...) {
// do something
} else {
Sleep(...); // prevent taking up too much CPU?
}
}
但似乎不理想/正確?
消耗不是有偷看,如何建立不同隊列每種消息類型,因此您可以將相應的使用者與每個隊列相關聯。 – gerrytan 2013-02-26 04:05:21
服務器線程是生產者,並且多個客戶端線程是多個消費者? – 2013-02-26 04:20:50