1

私の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にあります。

4

0 に答える 0