如果收件箱中的邮件数量超过 int 范围会怎样?

What happens if number of messages in mail inbox exceed int range?

我必须使用 POP3 使用 JavaMail 不断阅读新电子邮件。

我要实现这样的解决方案:

在小样本上工作正常,但我想知道如果服务器上的邮件数量超过 2147483647 会发生什么。

我看到如果我删除邮件(从普通客户端),它不会影响服务器返回到 JavaMail 的邮件数量或它们的数量。但是如果邮箱会溢出怎么办?我是否必须停止并重新开始申请?

Folder 的方法有 ints 作为参数(我考虑使用 getMessages)。邮箱有可能有这么多消息吗?或者也许这些 ID 只是以某种方式重置?但这也不利于我的申请。

显然,由于 JavaMail 使用 Java 整数来表示邮件编号,如果邮件超过 2^31-1 条,它将无法正常工作。对于任何真实邮箱来说,这似乎极不可能发生。如果你开始每秒收到一条新消息,那么你仍然需要 68 年才能达到这个数字。如果您的应用程序有这种可能性,您应该管理邮箱,使其永远不会变得那么大,例如,通过删除邮件或将它们移动到存档邮箱(这需要使用 IMAP)。

(多线程与此无关;我不知道Burak在想什么。)