首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

【servlet】Servlet多线程有关问题

2012-08-26 
【servlet】Servlet多线程问题Servlet本身是单实例的,这样当多个用户同时访问某个Servlet时,会访问该唯一的S

【servlet】Servlet多线程问题
Servlet本身是单实例的,这样当多个用户同时访问某个Servlet时,会访问该唯一的Servlet实例中的成员变量,如果对成员变量进行写入工作,那就会导致Servlet的多线程问题,即数据不一致。
解决Servlet多线程同步问题的方案:
  1,Servlet实现了javax.servlet.singleThreadModel(Servlet2.4中已经废弃该接口),此时的Servlet容器将保证Servlet实例是以单线程的方式运行,也就是说同一时刻,只会有一个线程运行Servlet的service()方法。   不推荐使用,大大降低了效率。
  2,去除实例变量,使用局部变量  推荐
  3,使用同步代码块 synchronized{...}  不推荐使用

热点排行