首页 > Java > java教程 > 为什么我应该避免在 Java EE 容器中生成线程?

为什么我应该避免在 Java EE 容器中生成线程?

Mary-Kate Olsen
发布: 2024-12-13 08:38:16
原创
511 人浏览过

Why Should I Avoid Spawning Threads in Java EE Containers?

了解 Java EE 容器中线程生成的阻碍

开始 Java EE 开发时,一个谨慎的建议是避免在容器内生成线程。然而,这个建议背后的原因可能不会立即显而易见。

不鼓励的理由

不鼓励线程生成的主要原因在于资源的托管性质Java EE 容器。服务器承担管理和监视环境中所有资源的角色。当单独生成线程时,它无法访问这些集中管理的资源或与之交互。当尝试获取用于 JNDI 查找的 InitialContext 或访问 JMS 连接工厂和数据源等资源时,这变得尤其成问题。

替代方法

尽管令人沮丧,但异步处理仍然是企业应用程序的一个组成部分。为了解决这个问题,Java EE 平台提供了专门的机制来管理异步任务。

其中一种机制是 Commonj WorkManager,通常受到 WebSphere 和 WebLogic 等平台的支持。这允许在主执行线程之外托管执行任务。

此外,每个 Java EE 平台都可以提供自己的异步处理专有机制。请务必查阅特定平台文档以获取适当的解决方案。

结论

虽然由于资源管理限制,线程生成曾经被阻止,但 Java EE 平台的进步已经提供了处理异步任务的替代机制。了解阻碍背后的理由并采用正确的方法可确保高效且可管理的 Java EE 应用程序。

以上是为什么我应该避免在 Java EE 容器中生成线程?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板