Java NIO 執行緒 的一個問題

promiscuous發表於2005-08-07
對於下面JavaNIO的程式碼:
while(true){
int n = selector.select();
if(n == 0) continue;
......
if(key.isacceptable){
....
}
if(key.isReadable()){
processdata p = new processdata(key);
Thread t = new Thread(p);
t.start();
}
總是出現下面的問題,就是線上程t執行到一半的時候,由於key還沒有讀完,它還是readable的,而此時外部的死迴圈繼續執行。由於readable,會出現同一個客戶端發來的訊息由多個執行緒同時處理的情形,應該如何解決,謝謝!!

相關文章