2017-04-14 58 views
0

settimeout(10)功能將會使這是定時器10時,每次我打電話connectionSocket.recv(1024)蟒蛇socket編程的setTimeout()計時器不復位每次調用

我想,如果我送active到服務器的定時器纔會被清除。像這樣:

timeOut = 10 
connectionSocket.settimeout(timeOut) 
while 1: 
    sentence = connectionSocket.recv(1024) 
    if sentence.decode() == 'active': 
     #reset the timer of settimeout() 

回答

0

這是一個應用程序級約束,而不是TCP可以爲您處理的事情。

您可以將超時設置爲可接受的誤差範圍(例如,如果您想等待總計10秒,超時1秒會在最差情況下給您11秒)並自行處理事務超時。