0

假设我在 servlet 中启动了自己的线程(不是守护进程)(可以是 springMVC 应用程序中的控制器或 struts 动作控制器):

  1. 让我们假设该操作已完成处理并希望将响应推出。即使我启动的线程仍在运行,也会发生这种情况吗?基本上我想知道的是容器会等到线程完成它的工作以推出响应吗?

  2. 假设在上面,容器不等待线程推送响应,它会等到后台线程完成以获取为处理此特定请求而生成的 servlet 线程,还是仅在自定义线程时才获取此线程完成它的工作了吗?

4

1 回答 1

0

由 servlet 线程生成的自定义线程与任何其他线程没有什么不同:它是一个独立的并行执行流。servlet 线程不关心自定义生成的线程:它继续执行。

因此,响应将发送到浏览器,就好像没有生成自定义线程一样,并且自定义生成的线程是否仍在运行是无关紧要的。

一旦 servlet 线程完成了对请求的处理并发送了响应,它就会返回到池中并可以开始为另一个请求提供服务。再一次,是否产生了自定义线程,以及该自定义线程是否仍在运行,这些都无关紧要。

于 2012-09-12T09:39:11.877 回答