gpt4 book ai didi

java - Servlet : Singleton, 单线程或多实例多线程

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:55:53 26 4
gpt4 key购买 nike

这个问题之前有人问过,也讨论过,但我想再问一下。

  1. Servlet 是否是单例?根据我的说法,它们仅由容器初始化,但它们仍然不是单例??为什么??

  2. Servlets 是单线程还是多线程(忘记 javax.servlet.SingleThreadModel 类)即当对单个 servlet 有多个请求时会发生什么?如果它们同时执行,那就意味着它是多线程的??如果它是多线程的,那么每个线程都会有一个 servlet 实例,这与第一点矛盾!!

我认为,每当有新请求时,容器都会为传入的请求创建一个新线程,比如 Req1,因为它会调用或分派(dispatch)控件到 servlet 的服务方法。现在这个执行是同时发生的……我猜是这样……

我的工作在 MVC 环境中是否一样? (比如 Struts 1/2,Springs)

最佳答案

仅存在一个实例的事实并不意味着它不是多线程的。更多线程可以同时调用同一个实例的同一个方法。Servlet 绝对是多线程的。

关于java - Servlet : Singleton, 单线程或多实例多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16962397/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com