0

我有一个应该像这样工作的应用程序:

  1. 打开与传输提供程序的连接。
  2. 尽快发送一堆消息。
  3. 与运输提供商的紧密联系。

我发现我的应用程序对于传输线程来说移动得太快了。我最终会丢失消息,因为在传输线程完成之前的消息之前,我会转到下一条消息。为了(暂时)解决这个问题,我在一条消息的启动和下一条消息的创建之间暂停了 2 秒。但这是不可接受的!我想要的是某种信号量,我可以等待它来确定传输线程何时完全处理完一条消息(即,我想要同步操作)。

有谁知道这样的事情?

4

1 回答 1

1

传输同步的。

你是什​​么意思你“丢失消息”?你的意思是说,即使 Transport 说消息已经发送(没有例外),但消息永远不会到达目的地?这可能表明您的邮件服务器中存在错误。

您可能想尝试按照 JavaMail FAQ 中的说明打开会话调试,以查看与邮件服务器的对话中是否有任何内容表明它为什么没有按预期工作。

于 2012-09-20T17:19:35.840 回答