相关疑难解决方法(0)

为什么Servlet中的实例变量不是线程安全的

当我阅读时Head First Servlet and JSP,他们说实例变量是非线程安全的.

我不太理解这句话.例如:我有一个名称为的servlet ActionServlet.java.每次将每个用户的请求发送到服务器,容器将创建一个新线程并创建新ActionServlet实例.

ActionServlet 可能有一个结构:

public class ActionServlet extends HttpServlet {
   // example of instance variable
   Instance variable;
   public void processRequest(HttpServletRequest request, HttpServletResponse response) {   
       // process something relating to instance variable
   }
}
Run Code Online (Sandbox Code Playgroud)

所以,因为所有这些线程都为它创建了一个新的类实例ActionServlet,所以我在这里看不到任何问题.因为这些线程的实例是彼此分开的.

请在多线程环境中找出使用实例变量时的问题.

谢谢 :)

java servlets instance-variables thread-safety java-ee

6
推荐指数
1
解决办法
2万
查看次数