有人告诉我,你不应该从在Tomcat(或任何其他容器,大概是)下运行的webapp启动你自己的线程
Runnable myRunnable = new Runnable() {
public void run() {
System.out.println("I'm running");
}
}
new Thread(myRunnable).start();
或类似地:
ScheduledThreadPoolExecutor retrySchedulerService = new ScheduledThreadPoolExecutor(3);
retrySchedulerService.schedule(dlrRetryTask, 120, TimeUnit.SECONDS);
而不是上述任何一种,你应该从Tomcat知道的某些线程池中请求一个线程。这有什么道理,还是完全爆发?
答案 0 :(得分:9)
随意启动自己的线程,但请记住在应用程序停止时停止它们。 Tomcat有自己的thead池,用于处理传入的请求。即使您设法访问它,我也不认为使用它是个好主意。
通常,在Java EE环境中启动线程并不是一个好习惯,但在像Tomcat这样的servlet容器中启动线程没什么不好。
答案 1 :(得分:1)