2012-08-28 45 views
0

这是关于Play Framework的线程安全性的问题。应用程序范围的资源线程安全

对于一个项目,我有一个包含静态域逻辑的大型POJO,它是在启动周期内构建的。然后放入缓存中。

每个客户端使用此应用程序范围的资源来'计算'一些特定的值。 与控制器一样,我的应用程序作用域资源是否是线程安全的?或者我必须自己实现线程安全以避免竞争状态?

在此先感谢! Richard

回答

1

您可以将其放入缓存中,但可能是缓存丢弃了您的数据。所以它看起来不是一个好主意。您必须确保您可以重新启动缓存。 reinit必须是线程安全的。 缓存是线程安全的。所以只要你只将线程安全对象放到缓存中,每件事情都可以。 希望这有助于。

+0

非常感谢您的帮助。是的,如果缓存清除,我们已经有了一些重新初始化循环。我只是想知道Play如何在内部进行线程安全。但正如你所说,我们必须让自己的项目也是线程安全的。 – Bjarne77

+0

玩简单不使用静态变量,因此它们是线程安全的。 – niels