0

例如,我有一个 JSF 2.0 WebApp,它有一个应用程序 bean,它运行一种用于绘制数字的方法。我不希望同时运行 2 个请求,所以我的问题是:我应该实现任何类型的信号量(以及如何实现)还是方法已经被 ApplicationBean 缓冲?

4

1 回答 1

1

这些方法绝对不是“缓冲的”(我认为您要查找的词是synchronized)。或者换句话说,应用程序范围的托管 bean 不是线程安全的。

您要么需要使方法同步,要么使用@Singleton @Named bean,以便更好地控制并发。在最后一种情况下,您的应用程序需要在至少支持 Java EE 6 Web 配置文件(Glassfish、JBoss、Resin)的服务器上运行。

于 2011-03-04T21:59:17.677 回答