问题描述
查看Struts2StrutsPrepareAndExecuteFilter这个类可以看出在服务器进行初始化时,调用了这个类的init化方法dispatcher=init.initDispatcher(config)生成了一个Dipspacher实例。然后在doFilter方法中,通过prepare.assignDispatcherToThread()方法将dispacher对象put进当前线程的ThreadLocalMap中去,其中key是ThreadLocal对象,value是Dispatcher对象。现在问题来了。多线程共享一个Dispatcher实例,当多线程对Dispatcher进行访问时,如果其中有线程更改了Dispatcher的成员变量,这样不就会引发线程安全问题了吗??望各位不要吝惜手上的力气,积极拍砖!!小弟在此静候各位的高论!
解决方案
本帖最后由 lyy5682077 于 2014-09-11 16:43:32 编辑
解决方案二:
没人回答我的问题吗
解决方案三:
自己顶!!UPUP
时间: 2025-01-30 16:54:42