我正在做一個在Python中註冊到服務器的客戶端。該客戶端將一個UDP數據包發送到register
,並等待來自服務器的register accepted
響應數據包。等待X秒鐘收到一個UDP數據包Python
有一些數據包丟失的可能性,因爲它是UDP,所以我需要的代碼:
發送數據包,並等待5秒響應,如果沒有收到報文,再次發送數據包,然後等待10秒,如果已經沒有響應,現在15秒,如果再次沒有響應,則打破循環。
我的問題是,接收數據包我做:
skt1.sendto(pqtUdp,(srvAdr,prtUdp))
data,addrs = skt1.recvfrom(56)
而且rcvfrom是阻塞的方法。我搜索了一下,我認爲使用select
我可以知道什麼時候收到一個包,然後讀取套接字並獲取它,但我不知道如何去做,我沒有找到我正在做的簡單示例。
有人可以給我一些幫助嗎?
謝謝!
謝謝,我會盡力給你報告! – rul3s
哦,男人!它需要根,而且我必須做到這一點沒有root權限! – rul3s