資源簡介
使用TCPServer編寫(多線程)socket服務
http://blog.csdn.net/ghostfromheaven/article/details/8653421

代碼片段和文件信息
#-*-?coding:utf-8?-*-
from?SocketServer?import?TCPServer?baseRequestHandler
import?traceback
class?MybaseRequestHandlerr(baseRequestHandler):
????“““
????#從baseRequestHandler繼承,并重寫handle方法
????“““
????def?handle(self):
????????#循環監聽(讀取)來自客戶端的數據
????????while?True:
????????????#當客戶端主動斷開連接時,self.recv(1024)會拋出異常
????????????try:
????????????????#一次讀取1024字節并去除兩端的空白字符(包括空格TAB\r\n)
????????????????data?=?self.request.recv(1024).strip()
????????????????
????????????????#self.client_address是客戶端的連接(host?port)的元組
????????????????print?“receive?from?(%r):%r“?%?(self.client_address?data)
????????????????
????????????????#轉換成大寫后寫回(發生到)客戶端
????????????????self.request.sendall(data.upper())
????????????except:
????????????????traceback.print_exc()
????????????????break
if?__name__?==?“__main__“:
????#telnet?127.0.0.1?9999
????host?=?““???????#主機名,可以是ip像localhost的主機名或““
????port?=?9999?????#端口
????addr?=?(host?port)
????
????#購置TCPServer對象,
????server?=?TCPServer(addr?MybaseRequestHandlerr)
????
????#啟動服務監聽
????server.serve_forever()
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????1309??2013-03-09?11:49??使用TCPServer編寫(多線程)socket服務\Myba
?????文件????????1505??2013-03-09?12:05??使用TCPServer編寫(多線程)socket服務\MyMultiThreadTCPServer.py
?????文件????????1394??2013-03-09?12:02??使用TCPServer編寫(多線程)socket服務\MyStreamTCPServer.py
?????目錄???????????0??2013-03-09?12:14??使用TCPServer編寫(多線程)socket服務\
評論
共有 條評論