Jboss Wildfly模块线程安全

Jboss Wildfly模块线程安全,jboss,thread-safety,wildfly,Jboss,Thread Safety,Wildfly,我想在Wildfly的模块中放置一个常用的jar,但我关心线程安全。 模块如何与应用程序链接? 它是否类似于操作系统级别的共享库,即每个加载模块的应用程序都将其模块放在自己的地址空间中,然后 模块中可以包含哪些代码?所有模块中的所有类都在同一个JVM中运行。这意味着,与其他Java应用程序(单机版、JavaEE、Spring)相比,没有内存隔离,线程安全性也没有区别。保持模块线程安全是您的责任。但是,假设我将此模块用作库,它将包含在每个需要它的应用程序中。我假设在部署时,库中的类将分别为每个部

我想在Wildfly的模块中放置一个常用的jar,但我关心线程安全。 模块如何与应用程序链接?
它是否类似于操作系统级别的共享库,即每个加载模块的应用程序都将其模块放在自己的地址空间中,然后
模块中可以包含哪些代码?

所有模块中的所有类都在同一个JVM中运行。这意味着,与其他Java应用程序(单机版、JavaEE、Spring)相比,没有内存隔离,线程安全性也没有区别。保持模块线程安全是您的责任。

但是,假设我将此模块用作库,它将包含在每个需要它的应用程序中。我假设在部署时,库中的类将分别为每个部署(应用程序)加载,这意味着每个应用程序将在其自己的地址空间中拥有这些类。我说得对吗?或者不同的类加载器(对于每个应用程序)是否知道这些是相同的类,并决定不加载它们两次?每个模块都有自己的类加载器。@ctomc从我的评论中可以看出,我知道这一点。您的评论没有给主题增加任何价值。每个应用程序都将通过唯一的模块类加载器提供模块类。因此,您只加载了该类的一个实例。