gpt4 book ai didi

java - Javamail 中的线程安全

转载 作者:IT老高 更新时间:2023-10-28 21:21:17 29 4
gpt4 key购买 nike

我正在研究 Javamail 是否是线程安全的,特别是在有许多 session 对应不同用户、多个 SMTP 服务器以及使用创建 MIME 消息和使用 transport.sendMessage 方法的情况下。我知道 Javamail 是面向桌面使用的,这让我怀疑它在构建时可能没有考虑到线程,我想知道是否有人有这样的经验。

最佳答案

诚然,JavaMail 的线程安全规则没有很好的文档记录,但希望它们大多符合您的预期。

多个线程可以使用一个 Session。

由于 Transport 表示与邮件服务器的连接,并且一次只能有一个线程使用该连接,Transport 将同步来自多个线程的访问以维护线程安全,但您真的只想使用它来自一个线程。

同样,一个Store可以被多个线程使用,但是对底层连接的访问​​将是同步的并且是单线程的。

一条消息一次只能由一个线程修改,但多个线程应该能够安全地读取一条消息(尽管不清楚为什么要这样做)。

希望对您有所帮助...

关于java - Javamail 中的线程安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12732584/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com