場景:服務端向 客戶端寫出數據的時候, 客戶端因爲 程序一場,關閉了連接。安全
此時,致使服務端崩潰了。socket
緣由: 轉:http://blog.csdn.net/x_nazgul/article/details/50998292.net
最後問題肯定爲, 對一個對端已經關閉的socket調用兩次write, 第二次將會生成SIGPIPE信號, 該信號默認結束進程.進程
解決方案:get
所以咱們須要重載這個信號的處理方法。調用如下代碼,便可安全的屏蔽SIGPIPE:it
signal (SIGPIPE, SIG_IGN);程序