last_ping = time.time()threshold = 5 * 60 # five minutes, make this whatever you wantwhile connected: data = irc.recv ( 4096 ) # If Nick is in use if data.find ( 'Nickname is already in use' ) != -1: NICK = NICK + str(time.time()) Connection() # Ping Pong so we don't get disconnected if data.find ( 'PING' ) != -1: irc.send ( 'PONG ' + data.split() [ 1 ] + 'rn' ) last_ping = time.time() if (time.time() - last_ping) > threshold: break
这将记录每次ping的时间,如果持续时间太长而没有一次ping,请跳出
connected循环。您不需要
while connected ==True:,只需
while connected:执行相同的 *** 作即可。
另外,考虑使用
connection代替
Connection,这是Python约定,仅对类使用大写名称。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)