10
SIGPIPEを防ぐ(または適切に処理する)方法
TCPまたはローカルUNIXソケットでの接続を受け入れ、単純なコマンドを読み取り、コマンドに応じて応答を送信する小さなサーバープログラムがあります。問題は、クライアントがときどき回答に関心を持たずに早く終了する可能性があるため、そのソケットに書き込むとSIGPIPEが発生し、サーバーがクラッシュすることです。ここでクラッシュを防ぐためのベストプラクティスは何ですか?行の反対側がまだ読んでいるかどうかを確認する方法はありますか?(select()は、ソケットが書き込み可能であると常に表示するため、ここでは機能しないようです)。または、ハンドラーでSIGPIPEをキャッチして無視する必要がありますか?
260
c
io
signals
broken-pipe
sigpipe