【发布时间】:2017-05-16 01:56:41
【问题描述】:
我必须通过使用 POP3 的 JavaMail 不断阅读新的电子邮件。
我将实施这样的解决方案:
- 统计所有邮件(一次,在申请开始时)
- 设置
lastRead为邮件号码 - 定期轮询收件箱,然后:
- 统计所有邮件并检查其数量是否大于
lastRead - 如果是这样,请阅读新邮件并更新
lastRead
- 统计所有邮件并检查其数量是否大于
在小样本下它工作正常,但我想知道如果服务器上的邮件数量超过 2147483647 会发生什么。
我看到,如果我删除邮件(从普通客户端),它不会影响服务器返回给 JavaMail 的邮件数量或其数量。但是如果邮箱溢出怎么办?我是否必须停止并重新启动应用程序?
Folder 的方法有ints 作为参数(我想到了getMessages,我使用它)。邮箱可以有这么多消息吗?或者,也许这些 id 只是以某种方式重置?但这也不适合我的应用程序。
【问题讨论】:
-
Max
int远高于 32767。它是 2^31-1。 -
@Eran 谢谢。但问题仍未得到解答;)
-
这里有
multithreading -
@BurakAkyıldız 你能写更多关于这个的东西吗?
标签: java email jakarta-mail