2010-10-07 36 views
2

我可以測試這個來找出行爲,但那不是重點。在另一個問題my answer中,一位評論者建議關閉受監控的fd從另一個線程喚醒select。另一位評論者無法在標準中找到對此行爲的參考,而且我也找不到。如果關閉受監控的fd,select應該做什麼?

有人可以提供一個指向此行爲標準的指針嗎?

回答

2

select在「開放組基本規格第7期」的描述:

描述符應視爲讀就緒時輸入功能的呼叫與O_NONBLOCK明確不會阻礙,是否該功能不會成功傳輸數據。 (該功能可能會返回數據,文件結束指示或表明其被阻塞的錯誤以外的錯誤,並且在每種情況下描述符都應被視爲準備好讀取。)

所以,我會說這種方法是便攜式的。