Questions tagged «broken-pipe»

10
如何防止SIGPIPE(或正确处理)
我有一个小型服务器程序,该程序接受TCP或本地UNIX套接字上的连接,读取一个简单命令,并根据命令发送回复。问题是客户端有时可能对答案没有兴趣,并且提早退出,因此写入该套接字将导致SIGPIPE并使服务器崩溃。防止此处崩溃的最佳实践是什么?有没有办法检查行的另一端是否仍在读取?(select()似乎在这里不起作用,因为它总是说套接字是可写的)。还是应该仅使用处理程序来捕获SIGPIPE并忽略它?
259 c  io  signals  broken-pipe  sigpipe 

4
如何防止errno 32管道破裂?
目前,我正在使用内置于python的应用程序。当我在个人计算机上运行它时,它可以正常工作。 但是,当我将其移至生产服务器时。它不断向我显示以下错误: 我进行了一些研究,得出的原因是,当服务器仍在忙于发送数据时,最终用户浏览器会停止连接。 我想知道为什么会发生这种情况,以及导致它在我的个人计算机上运行时阻止它在生产服务器中正常运行的根本原因是什么?任何建议表示赞赏 Exception happened during processing of request from ('127.0.0.1', 34226) Traceback (most recent call last): File "/usr/lib/python2.7/SocketServer.py", line 284, in _handle_request_noblock self.process_request(request, client_address) File "/usr/lib/python2.7/SocketServer.py", line 310, in process_request self.finish_request(request, client_address) File "/usr/lib/python2.7/SocketServer.py", line 323, in finish_request self.RequestHandlerClass(request, client_address, self) File "/usr/lib/python2.7/SocketServer.py", line 641, in __init__ self.finish() …

5
是什么原因导致管道破裂错误?
我知道关闭对等端的套接字时会引发管道破裂错误。 但是,在我的测试中,我注意到,当对等端关闭时,在此端立即进行“发送”调用并不总是会导致管道错误。 例如: 关闭对等端的套接字后(我尝试通过调用close进行干净关闭,也通过杀死对等体来异常关闭),如果我尝试发送40个字节,则管道不会断开,但是,如果我尝试发送40000字节,则立即给出管道中断错误。 究竟是什么原因导致管道破裂,并且可以预测其行为?
83 c  broken-pipe 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.