我目前正在开发一个为程序开发servlet的项目。
这个servlet不会监听请求,而是希望它在后台运行并每10秒执行一次。
我正在使用Thread.sleep(10000);
来完成此任务。
让这个servlet每10秒执行一次同时允许其他进程运行的最佳方法是什么?
答案 0 :(得分:0)
您可以使用SingleThreadPool并使用QuartzScheduler执行它。因此,您可以通过仅更改配置文件来更改您希望它执行的频率。你的线程就像一个工作,你可以分配优先权等。
以下是文档:
答案 1 :(得分:0)
不要为此使用servlet。它不能可靠地为您工作,因为servlet专门用于响应请求。相反,请使用ServletContextInitializer到schedule a TimerTask进行后台工作。