Servlet 线程安全问题
Servlet 线程安全问题
?
时间长了,很多比较基础的东西,现在回顾下,
?
1. Servlet在容器中,第一次被客户端访问,生成一个实例.
?
2 .? 第2,3...就不再生成实例了(就是Singleton),容器分配多个线程.
?
3.? 但public 成员变量引起线程的不安全性(Servlet 线程本来是安全的).
?
解决方法,
1)让Servlet 实现 SingleThreadModel 接口 (不建议使用)
2) 同步对共享数据的操作? (当访问量大了,内存开销大)
3) 避免使用? public 变量,尽量用局部 (这个最好)
?
更多信息可以参考:
?
http://www.yesky.com/334/1951334_2.shtml