Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在JavaMail中与传输同步?_Java_Asynchronous_Jakarta Mail - Fatal编程技术网

如何在JavaMail中与传输同步?

如何在JavaMail中与传输同步?,java,asynchronous,jakarta-mail,Java,Asynchronous,Jakarta Mail,我有一个应用程序应该是这样工作的: 打开与传输提供商的连接 尽快发送一组消息 与传输提供商保持密切联系 我发现我的应用程序对于传输线程来说运行得太快了。我最终会丢失消息,因为在传输线程完成之前,我会继续处理下一条消息。为了(暂时)解决这个问题,我在发送一条消息和创建下一条消息之间暂停了2秒钟。但这是不可接受的!我想要的是某种信号量,我可以等待它来确定传输线程何时完全完成消息处理(即,我想要同步操作) 有人知道这样的事情吗?交通是同步的 你“丢失信息”是什么意思?你的意思是,即使传输说消息已经发送

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

  • 打开与传输提供商的连接
  • 尽快发送一组消息
  • 与传输提供商保持密切联系
  • 我发现我的应用程序对于传输线程来说运行得太快了。我最终会丢失消息,因为在传输线程完成之前,我会继续处理下一条消息。为了(暂时)解决这个问题,我在发送一条消息和创建下一条消息之间暂停了2秒钟。但这是不可接受的!我想要的是某种信号量,我可以等待它来确定传输线程何时完全完成消息处理(即,我想要同步操作)


    有人知道这样的事情吗?

    交通是同步的

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


    您可能希望尝试打开JavaMail常见问题解答中所述的会话调试,以查看与邮件服务器的对话中是否有任何内容表明它没有按预期工作。

    Wow。我一定是做错了。从跟踪中,我发现传输正在为每封电子邮件连接到服务器,发送消息,然后断开连接。是否有一个代码示例可以实现我想要的功能(参见上面的描述)?是的,在.Bill Shannon中:我尝试了session.setDebug(true),并获得了很多有用的信息。它真的是连接每一次的每一条消息(非常慢)。我正在重用我创建的会话对象和消息对象。我看过所有的例子,但它们只显示发送一条消息。有什么想法吗?你有想法吗?没有,我没有。我使用Transport.send(msg)。