select(2)
読み取りを監視しているファイル記述子が別のスレッドによって閉じられたときの関数の動作は何ですか?
いくつかの大まかなテストから、すぐに戻ります。結果は、(a) まだデータを待ち続けているが、実際にデータから読み取ろうとすると、EBADF が返される (おそらく競合が発生する可能性がある) か、(b) ふりをするかのいずれかであると思われます。ファイル記述子が渡されることはありませんでした。後者のケースが当てはまる場合、タイムアウトなしで単一の fd を渡すと、それが閉じられた場合にデッドロックが発生します。