我在 J2EE 应用程序中使用 ScheduledExecutorService 来安排每 x 秒从配置文件中获取的任务(从数据库中获取数据并将它们发送到外部服务器)。我的代码是:
try{
final ScheduledExecutorService service = Executors.newSingleThreadScheduledExecutor();
service.scheduleWithFixedDelay(new Runnable(){
public void run(){
RsaBaseAction rsa = RsaBaseAction.getInstance();//class that does all the work
rsa.rsaBaseAction();
}
}, 0, timeInterval, TimeUnit.SECONDS);
}
catch(Exception ex){
ex.printStackTrace();
}
我的问题是我应该编写任何额外的代码吗?我应该写一个while循环来确保线程完成然后为我做一个service.shutdown()
或确实ScheduledExecutorService
照顾它吗?