论坛首页 Java企业应用论坛

关于Struts2 Dispatcher分发器的线程安全问题

浏览 3479 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2014-09-11  


查看Struts2 StrutsPrepareAndExecuteFilter这个类

可以看出在服务器进行初始化时,掉用了这个类的init化方法
dispatcher = init.initDispatcher(config)
生成了一个Dipspacher实例。

然后在doFilter方法中,通过prepare.assignDispatcherToThread()方法将dispacher对象装进当前线程的ThreadLocalMap中去,其中key是ThreadLocal对象,value是Dispatcher对象。

现在问题来了。多线程共享一个Dispatcher实例,当多线程对Dispatcher进行访问时,如果其中有线程更改了Dispatcher的成员变量,这样不就会引发线程安全问题了吗??

望各位不要吝惜手上的力气,积极拍砖!!小弟在此静候各位的高论!
   发表时间:2014-09-12  
没人回答我的问题吗?
泪奔 等我 等等我
0 请登录后投票
   发表时间:2015-04-27  
坚持就是胜利
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics