pop3连接是否超时?

时间:2012-04-10 21:38:55

标签: python pop3 poplib

我正在使用python poplib

POP3连接在一段时间不活动后是否会超时?有没有办法设置这个超时?这样的超时是否会导致标记为删除的电子邮件被删除,就像调用了quit()一样?

我看到的唯一超时是指连接尝试超时

class poplib.POP3(host[, port[, timeout]])

我的POP3.quit()调用抛出一个poplib.error_proto异常,并显示消息“timed out”,我想知道连接是否会自行超时。

3 个答案:

答案 0 :(得分:2)

  

POP3连接在一段时间不活动后是否会超时?

这主要取决于另一端的服务器软件。某些套接字库可能允许您指定本地超时。在本地和远程超时之间的最短时间内,连接将超时。

  

有没有办法设置此超时?

除非您控制服务器软件设置(例如,您运行自己的服务器),否则无法更改远程超时。

  

这样的超时是否会导致标记为删除的电子邮件被删除,就像调用了quit()一样?

超时行为通常与手动关闭套接字相同(有或没有关闭)。如果不发送quit命令,则不会从服务器中删除消息。

答案 1 :(得分:0)

POP3是一种交易方式。因此,如果您从服务器下载并删除消息,则在您正常关闭连接之前它将无效。 POP3.quit()方法对此有深刻的描述。神奇的词是提交

连接超时通常是服务器设置,当然,当服务器超时时,它被视为回滚

答案 2 :(得分:-2)

是的,POP3套接字最终会超时。看这里你在构造函数中传递超时。

http://docs.python.org/library/poplib.html

class poplib.POP3(host[, port[, timeout]])