IO多路複用多并發伺服器模闆
2018年06月25日
| 萬仟網IT程式設計
|

我要評論
1 import socket 2 import selectors # IO多路複用選擇器 3 4 epoll_selector = selectors.EpollSelector() # 執行個體化選擇器 5 server = socket.socket() # 執行個體化套接字 6 server.bi... ...
1 import socket
2 import selectors # IO多路複用選擇器
3
4 epoll_selector = selectors.EpollSelector() # 執行個體化選擇器
5 server = socket.socket() # 執行個體化套接字
6 server.bind(('', 6666)) # 位址和端口
7 server.listen(100) #偵聽數
8
9 def recv(conn): # 資料處理
10 recv_data = conn.recv(1024)
11 if recv_data: # 判斷是否存在
12 res = recv_data.decode() # 解碼接收到的資料
13 print(res)
14 conn.send(recv_data) # 發送資料
15 else:
16 epoll_selector.unregister(conn) # 解除監視,關閉監控
17 conn.close() # 關閉連接配接
18
19 def accept(server): # 連接配接處理
20 conn, addr = server.accept() # 生成一個對等連接配接套接字
21
22 epoll_selector.register(conn, selectors.EVENT_READ, recv) # 注冊毀掉函數
23
24
25 epoll_selector.register(server, selectors.EVENT_READ, accept) # 注冊回調函數
26
27
28 while True:
29 events = epoll_selector.select() # 查詢事件
30
31 for key, mask in events: # 拆包
32 callback = key.data
33 sock = key.fileobj
34 callback(sock)
版權聲明:本文内容由網際網路使用者貢獻,該文觀點僅代表作者本人。本站僅提供資訊存儲服務,不擁有所有權,不承擔相關法律責任。
如發現本站有涉嫌抄襲侵權/違法違規的内容, 請發送郵件至 [email protected] 舉報,一經查實将立刻删除。
相關文章:
一.在進行項目開發之前呢,先淡定,不要急着下手,多思思,當然,能養成這個習慣也非一日之功,多吃幾次虧,多反思反思也就上路了,别偷懶。今天先介紹一個p...
leetcode初級算法 問題描述 給定一個整數數組,判斷是否存在重複元素。 如果任何值在數組中出現至少兩次,函數傳回 true。如果數組中每個元素...
爬取的站點:http://beijing.8684.cn/
(1)環境配置,直接上代碼:
# -*- coding:...
re子產品的使用 re.match 從頭比對一個符合規則的字元串,從起始位置開始比對,比對成功傳回一個對象,未比對成功傳回None。 或者這樣寫 表示...
複制代碼 代碼如下:def getfibonacci(num): res=[0,1] a=0 b=1&...
代碼如下: 1 for x in range(2, 100): 2 for y in range(2, x): 3 if x % y == 0: 4...
本文總結了一些簡單基本的輸出格式化形式,下面話不多說了,來看看詳細的介紹吧。
一、列印字元串
>>>...
使用python生成随機圖檔驗證碼,需要使用pillow子產品
1.安裝pillow子產品
pip install pill...
#String的内置方法 st='hello world' ★1、print(st.count('l')) #統計元...
[python]
# -*- coding: utf-8 -*-
import os
impo...
網友評論
驗證碼: