在Tomcat下启动线程
有人告诉我,您不应该从在Tomcat(或其他任何容器)下运行的Web应用程序启动自己的线程。
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知道的某个线程池中请求一个线程,而不是上述任何一个。这有什么道理吗,还是完全是poppycock?
回答:
可以随意启动自己的线程,但是请记住在应用程序停止时将其停止。Tomcat有自己的thead池,用于处理传入的请求。我认为使用它不是一个好主意,即使您设法访问它也是如此。
通常,在Java EE环境中启动线程不是一个好习惯,但是在Tomcat之类的servlet容器中启动线程也不错。
以上是 在Tomcat下启动线程 的全部内容, 来源链接: utcz.com/qa/402661.html