Java 在Tomcat下启动线程
有人告诉我,你不应该从运行在Tomcat(或者任何其他容器)下的webapp启动自己的线程 或类似地:Java 在Tomcat下启动线程,java,multithreading,tomcat,Java,Multithreading,Tomcat,有人告诉我,你不应该从运行在Tomcat(或者任何其他容器)下的webapp启动自己的线程 或类似地: ScheduledThreadPoolExecutor retrySchedulerService = new ScheduledThreadPoolExecutor(3); retrySchedulerService.schedule(dlrRetryTask, 120, TimeUnit.SECONDS); 您应该从Tomcat知道的一些线程池中请求一个线程,而不是上述任何一个。这是真的
ScheduledThreadPoolExecutor retrySchedulerService = new ScheduledThreadPoolExecutor(3);
retrySchedulerService.schedule(dlrRetryTask, 120, TimeUnit.SECONDS);
您应该从Tomcat知道的一些线程池中请求一个线程,而不是上述任何一个。这是真的吗,还是完全胡说八道?请随意启动自己的线程,但请记住在应用程序停止时停止它们。Tomcat有自己的thead池,用于处理传入的请求。我不认为使用它是一个好主意,即使你设法访问它
一般来说,在JavaEE环境中启动线程不是一个好的实践,但在像Tomcat这样的servlet容器中启动线程并没有什么坏处。下面是关于从servlet运行线程的讨论 另一个讨论是关于从EJB容器运行线程
ScheduledThreadPoolExecutor retrySchedulerService = new ScheduledThreadPoolExecutor(3);
retrySchedulerService.schedule(dlrRetryTask, 120, TimeUnit.SECONDS);