Я следую некоторому примеру кода для использования asyncore
здесь, только установив значение timeout
для asyncore.loop
как в следующем полном примере:
import smtpd
import asyncore
class CustomSMTPServer(smtpd.SMTPServer):
def process_message(self, peer, mailfrom, rcpttos, data):
print 'Receiving message from:', peer
print 'Message addressed from:', mailfrom
print 'Message addressed to :', rcpttos
print 'Message length :', len(data)
return
server = CustomSMTPServer(('127.0.0.1', 1025), None)
asyncore.loop(timeout = 1)
Я ожидал, что тайм-аут произойдет через 1 секунду, но это не так. Код выполняется намного дольше, чем одна секунда. Что мне здесь не хватает?
asyncore.loop()
не завершает функциюasyncore.loop()
по истечении указанного времени. - person Alex   schedule 23.01.2013timeout
, 3) asyncore не использует указанный тайм-аут с select 4) есть есть открытые каналы .. Я подозреваю, что это скоро закончится, если будет указано количество (скажем, 2). Если это действительно так, то № 2 и № 3, вероятно, можно исключить. - person   schedule 23.01.2013timeout
вasyncore.loop()
? - person Alex   schedule 23.01.2013