ThreadPoolTaskExecutor怎么计算一个线程的耗时时间
时间: 2023-07-25 19:07:21 浏览: 116
ThreadPoolTaskExecutor是Spring框架中的一个线程池实现,它可以用来管理多个线程并发执行任务。如果你想要计算某个线程的耗时时间,可以在任务执行前记录当前时间戳,任务执行后再记录一次时间戳,两个时间戳之差即为该线程的耗时时间。
具体代码实现如下:
```java
public class MyTask implements Runnable {
@Override
public void run() {
long startTime = System.currentTimeMillis();
// 执行任务
// ...
long endTime = System.currentTimeMillis();
long elapsedTime = endTime - startTime;
System.out.println(Thread.currentThread().getName() + " 执行耗时:" + elapsedTime + "毫秒");
}
}
// 创建线程池
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setCorePoolSize(10);
executor.setMaxPoolSize(20);
executor.setQueueCapacity(100);
executor.setThreadNamePrefix("MyThread-");
// 提交任务
executor.execute(new MyTask());
```
在上面的代码中,`MyTask`实现了`Runnable`接口,重写了`run()`方法,在方法中记录了任务的开始时间和结束时间,并打印出该线程的耗时时间。在创建线程池后,通过`execute()`方法提交任务,线程池会自动调度线程执行任务。
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.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)