Spring Web Flow - 在流程范围内做对象需要同步它们的方法吗?

时间:2013-09-11 10:35:40

标签: java spring spring-webflow

来自Web Flow示例预订应用程序:

<on-start>
    <evaluate expression="bookingService.createBooking(hotelId, currentUser.name)" result="flowScope.booking" />
</on-start>

当我在流的视图状态中为flowScope.booking对象设置值时,这是如何同步的?内存可见性是否存在问题,因为访问flowScope.booking的每个请求可能都由不同的线程提供服务?

编辑:我不是在谈论尝试修改同一个对象的多个并发请求。我在谈论在流程范围内使用相同对象的两个后续请求。

是否正确,容器中的每个请求可能由不同的线程提供?

如何确保,当第一个请求(由线程A处理)将预订的checkoutDate属性设置为某个值时,第二个请求(由线程B处理)可以读取预订对象的checkoutDate属性并实际获取该值,是由线程A?

设置的

如果您不知道,我在说什么,请参阅:https://www.cs.umd.edu/users/pugh/java/memoryModel/jsr-133-faq.html

应该有一些同步机制。但是我不知道,如果它在Spring框架中的某个地方,或者它应该由我完成 - 让所有域对象的getter和setter同步?

0 个答案:

没有答案