国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python提示[Errno 32]Broken pipe導(dǎo)致線程crash錯誤解決方法

2019-11-25 18:05:21
字體:
供稿:網(wǎng)友

本文實例講述了Python提示[Errno 32]Broken pipe導(dǎo)致線程crash錯誤解決方法。分享給大家供大家參考。具體方法如下:

1. 錯誤現(xiàn)象
ThreadingHTTPServer 實現(xiàn)的 http 服務(wù),如果客戶端在服務(wù)器返回前,主動斷開連接,則服務(wù)器端會報 [Errno 32] Broken pipe 錯,并導(dǎo)致處理線程 crash.
下面先看個例子,python 版本: 2.7
示例代碼

復(fù)制代碼 代碼如下:
#!/usr/bin/env python
#!coding=utf-8
 
import os
import time
import socket
import threading
from BaseHTTPServer import HTTPServer ,BaseHTTPRequestHandler
from SocketServer import ThreadingMixIn
 
class RequestHandler(BaseHTTPRequestHandler):
    def do_GET(self):
        """
        處理get請求
        """      
        query=self.path
        print "query: %s thread=%s" % (query, str(threading.current_thread()))
        
        #ret_str="<html>" + self.path + "<br>" + str(self.server) + "<br>" + str(self.responses) +  "</html>"
        ret_str="<html>" + self.path + "<br>" + str(self.server) +  "</html>"
        
        time.sleep(5)
        
        try:
            self.send_response(200)
            self.send_header('Content-type','text/html')
            self.end_headers()
            self.wfile.write(ret_str)
        except socket.error, e:
            print "socket.error : Connection broke. Aborting" + str(e)
            self.wfile._sock.close()  # close socket
            self.wfile._sock=None
            return False
       
        print "success prod query :%s" % (query)
        return True
 
#多線程處理
class ThreadingHTTPServer(ThreadingMixIn,HTTPServer):
    pass
    
if __name__ == '__main__':
    serveraddr = ('',9001)
 
    ser = ThreadingHTTPServer(serveraddr,RequestHandler)
    ser.serve_forever()
    sys.exit(0)

運行服務(wù)
./thread_http_server_error.py
第1次 curl ,等待返回
復(fù)制代碼 代碼如下:
[~]$curl -s 'http://10.232.41.142:9001/hello1′
<html>/hello1<br><__main__.ThreadingHTTPServer instance at 0x37483b0></html>[~]$
此時服務(wù)器端輸出日志如下:
$./thread_http_server_error.py
query: /hello1 thread=
search041142.sqa.cm4.tbsite.net 主站蜘蛛池模板: 自贡市| 图木舒克市| 延津县| 米脂县| 突泉县| 海晏县| 衢州市| 宿迁市| 双鸭山市| 双城市| 临安市| 罗江县| 当阳市| 桂平市| 黄平县| 富平县| 汨罗市| 屏南县| 北海市| 金阳县| 禄丰县| 北碚区| 唐山市| 右玉县| 无棣县| 昌平区| 上饶市| 霍城县| 洪江市| 辽宁省| 青阳县| 册亨县| 康马县| 凭祥市| 南康市| 凤山县| 西宁市| 德格县| 旺苍县| 茶陵县| 凤山县|