2 u014456491 u014456491 于 2014.03.31 01:26 提问

Servlet与多线程的关系是什么?

我知道Servlet是一个线程不安全的实例化的对象,JMM模型里线程有缓存和堆,堆是线程自己专用的。
为了安全打印某个用户信息,我就在Servlet的方法里新建一个局部变量 print。

如果A、B俩用户同时访问这个Servlet,
那么Servlet方法内的局部变量print是在Servlet实例的堆里面?
还是分别在AB两个线程的堆里面啊?

这个过程理解为AB两个线程的run方法里同时用了这个Servlet实例?
还是理解为AB两个线程的run方法就是Servlet执行的方法呢?

1个回答

abguorui0928
abguorui0928   2014.04.15 18:51

Servlet是单例的,一般不建议在Servlet中创建局部变量,如果确实需要,则需要考虑同步

Csdn user default icon
上传中...
上传图片
插入图片