亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

windows下用Python進行select套接字實驗時,返回的r_list問題。

windows下用Python進行select套接字實驗時,返回的r_list問題。

慕碼人8056858 2019-02-25 15:13:28
window下利用select驗證套接字讀寫,但是select返回的r_list文件描述符集似乎是不變的,代碼如下,求解答,謝謝相關代碼接收端:import select,socket sk=socket.socket() sk.bind(("127.0.0.1",5002)) sk.listen(5) inputs=[sk] outputs=[]while True:     r_list,w_list,e_list=select.select(inputs,outputs,inputs,1)     print(r_list)     print("正在監聽的端口數:%d"%len(inputs))    for sk_conn in r_list:        if sk_conn==sk:            conn,addr=sk.accept()             conn.recv(1024)             inputs.append(conn)             print(inputs)        else:             try:                 rec=sk_conn.recv(1024)            except Exception as ex:err            else:                 print("收到:"+str(rec,encoding="utf-8")發送端:import socket ck=socket.socket() ck.connect(("127.0.0.1",5002)) ck.sendall(bytes("hello",encoding="utf-8")) ck.close()你期待的結果是什么?實際看到的錯誤信息又是什么?發送端sendall一次后關閉,接收端r_list應該經歷從0-1(sk)-2(sk,conn)-0,的過程,但是實際上r_list之后一直有1個文件描述符conn。這是為什么?
查看完整描述

1 回答

  • 1 回答
  • 0 關注
  • 678 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號