私のC++アプリケーションは、へEPIPE
の呼び出しが失敗した後、errnoの結果を受け取ったようwrite()
です。渡されるファイル記述子はwrite()
、NFSマウントされたディスク上のファイル用です。
のマニュアルページは次のようにwrite()
説明EPIPE
しています。
fd is connected to a pipe or socket whose reading end is closed. When this
happens the writing process will also receive a SIGPIPE signal. (Thus, the write
return value is seen only if the program catches, blocks or ignores this signal.)
だから私はどうやって得るかについて混乱していますEPIPE
。これはマルチスレッドの問題であり、errnoが別のスレッドに誤って提供されている可能性がありますか?errnoはスレッドセーフだと思ったので、そうは思われませんが、EPIPEを取得しても意味がないようです。これはCentosv4にあります。