ScheduledExecutorService任务开始和结束
时间: 2023-10-13 19:09:07 浏览: 86
ScheduledExecutorService是Java中一个用于执行定时任务的线程池,它提供了一种定时执行任务的方式。在使用ScheduledExecutorService时,我们可以通过schedule方法来指定需要执行的任务以及任务执行的时间,通过shutdown方法来关闭线程池。在任务开始和结束时,可以使用Java中的日志工具记录日志信息。
下面是一个示例代码,演示了如何使用ScheduledExecutorService来执行定时任务,并记录任务开始和结束的日志信息:
```
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import java.util.logging.Logger;
public class ScheduledTaskExample {
private static final Logger logger = Logger.getLogger(ScheduledTaskExample.class.getName());
public static void main(String[] args) {
ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
Runnable task = new Runnable() {
public void run() {
logger.info("Task started");
// 执行任务
logger.info("Task completed");
}
};
// 在10秒后执行任务
executor.schedule(task, 10, TimeUnit.SECONDS);
// 关闭线程池
executor.shutdown();
}
}
```
在这个示例中,我们创建了一个ScheduledExecutorService实例,并使用schedule方法指定了需要执行的任务以及任务执行的时间。任务开始时,我们记录了一条日志信息,任务执行完成后,我们记录了另一条日志信息。最后,我们使用shutdown方法关闭了线程池。
阅读全文