刚刚看到一句:
如何现实servlet的单线程模式?
答案是: <%@ page isThreadSafe=”false”%>
为什么不是 true 呢?
单线程就是使用同步,而同步就是线程安全的,所以 不就是 isThreadSafe="true" 吗?
请大家指教。
thanks advanced
楼主你看的书或网页误导你了,垃圾翻译的垃圾信息。
<%@ page isThreadSafe=”false”%>
并不是servlet的单线程模式,servlet永远是运行于多线程环境的,一个request一个线程。这句配置实际是指明使用servlet的单例模式,即所有request的线程都使用同一个servlet实例处理,这种模式带来性能的提升(不用每次request访问都创建servlet)。但是它不是线程安全的,如果servlet中有自己的field,多个线程访问修改这个field将会导致不可预料了问题。所以配置中是isThreadSafe=”false”,告诉你这样配置是线程不安全的。