執行緒池版的SocketServer

2021-05-21 19:14:21 字數 362 閱讀 9641

python的socketserver模組提供了乙個開發socket server的捷徑。但是其自帶的非同步handler threadingmixin每次處理請求是都會產生乙個新的執行緒,在負載較重的時候會有一些問題。需要乙個使用執行緒池的tcpserver. 

具體的**如下: 

繼承自tcpserver和object。 

繼承object的原因是需要使用super呼叫父類的方法,需要使用new style的類。 

process_request方法在有請求到來的時候被呼叫。 

它將request和客戶端位址放到乙個佇列裡。

配合乙個requesthandler,就可以輕鬆的實現乙個執行緒池版的tcpserver 

執行緒池版的SocketServer

python的socketserver模組提供了乙個開發socket server的捷徑。但是其自帶的非同步handler threadingmixin每次處理請求是都會產生乙個新的執行緒,在負載較重的時候會有一些問題。需要乙個使用執行緒池的tcpserver.具體的 如下 from threadi...

python 執行緒池 Python的執行緒池

usr bin env python coding utf 8 concurrent 用於執行緒池和程序池程式設計而且更加容易,在python3.2中才有。import sys from concurrent.futures import threadpoolexecutor,as complete...

執行緒 執行緒池

執行緒池是一種多執行緒處理形式,處理過程中將任務新增到佇列,然後在建立執行緒後執行,主要實現 建立執行緒和管理執行緒,並且給執行緒分配任務。執行緒池中的執行緒是併發執行的。乙個比較簡單的執行緒池至少應包含執行緒池管理器 工作執行緒 任務列隊 任務介面等部分。其中執行緒池管理器的作用是建立 銷毀並管理...