Java 是否有本机对象池实现?

Does Java have a native object pool implementation?

我想使用对象池来管理 SMTP 服务器连接,因为创建它们的成本非常高(需要发送电子邮件总时间的一半)。到目前为止,我发现唯一的选择是:

  1. 使用 Apache Commons Pool 或其他一些第 3 方库
  2. 自己写(有风险!)

JDK不提供对象池吗?我宁愿不依赖第三方,这对我来说似乎是一个很好的 generic/basic 功能。

Doesn't the JDK provide an object pool?

自 Java 11 起,Java SE 库不提供通用对象池。

但如果环顾四周,您可能会发现一系列 3rd 方库。


I rather not depend on a 3rd party.

用滚石乐队的歌曲来说:

"No, you can't always get what you want ...."

但严重的是,Sun / Oracle Java 开发人员从未将 Java SE 的角色视为提供您可能需要的所有库。如果您从产品中排除第 3 方依赖项,那么您最终将编写和维护比必要更多的代码。