Servlet多线程并发问题
Servlet多线程并发问题
1、servlet对象
servlet对象在tomcat服务器是单实例多线程的
2、相关变量
(1)HttpServletRequest 请求对象:获取请求信息
(2) HttpServletResponse 响应对象: 设置响应对象
(3) ServletConfig对象: servlet配置对象
(4) ServletContext对象: servlet的上下文对象
3、线程安全问题
因为servlet是多线程的,所以当多个servlet的线程同时访问了servlet的共享数据,如成员变量,可能会引发线程安全问题
4、解决方法
(1)把使用到共享数据的代码块进行同步(使用synchronized关键字进行同步)
(2)servlet类中尽量不要使用成员变量。使用成员,必须同步,而且尽量缩小同步代码块的范围