Servlet 的线程安全问题笔记

1,Servlet容器是以单实例多线程的形式调用一个servlet的。Servlet容器通过一个线程池来调用servlet实例。

2,类变量和实例变量是非线程安全的,所以在servelt里要注意尽量少用,或者只用只读的类变量跟实例变量。

3,ServletContext,HttpSession类的getAttribute()是非线程安全的。为避免线程安全问题,可对其进行同步synchronized访问,但会有排队性能问题。

4,Servlet本身就是多线程的,尽量不要在servlet里再创建线程类,这样会造成管理的复杂性。

5,Servlet访问外部对象,并进行修改操作时,要加锁,做到互斥访问。

6,在多线程的环境中要使用同步的集合类。例如用Vector代替ArrayList,Hashtable代替HashMap。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值