定时开启线程,线程中周期执行任务
时间: 2023-11-28 09:54:55 浏览: 36
在Java中,可以使用ScheduledExecutorService来定时开启线程,并在线程中周期执行任务。下面是一个示例代码:
```java
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class ScheduledTask {
public static void main(String[] args) {
ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor();
Runnable task = () -> {
// 执行任务
System.out.println("Task is running");
};
executorService.scheduleAtFixedRate(task, 0, 1, TimeUnit.SECONDS);
}
}
```
在上面的代码中,使用Executors.newSingleThreadScheduledExecutor()方法创建一个只有一个线程的ScheduledExecutorService实例。然后定义一个Runnable类型的任务,并使用scheduleAtFixedRate()方法来周期执行该任务。scheduleAtFixedRate()方法的第一个参数为要执行的任务,第二个参数为任务的延迟时间,第三个参数为任务的周期时间,第四个参数为时间单位。
在上述示例中,任务会立即执行,然后每隔1秒再执行一次。您可以根据需要更改延迟时间和周期时间。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)