阅读量:3
在Java中,要使用newFixedThreadPool提交任务,首先需要导入java.util.concurrent包中的ExecutorService和Executors类。然后,可以使用Executors类创建一个固定大小的线程池,接着使用ExecutorService的submit方法提交任务。
下面是一个简单的示例:
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
public class FixedThreadPoolExample {
public static void main(String[] args) {
// 创建一个固定大小为3的线程池
ExecutorService fixedThreadPool = Executors.newFixedThreadPool(3);
// 提交任务到线程池
for (int i = 0; i < 10; i++) {
final int taskNumber = i;
fixedThreadPool.submit(() -> {
System.out.println("Task " + taskNumber + " is running on thread " + Thread.currentThread().getName());
try {
// 模拟任务执行时间
TimeUnit.SECONDS.sleep(2);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Task " + taskNumber + " is completed");
});
}
// 关闭线程池
fixedThreadPool.shutdown();
try {
// 等待所有任务完成
if (!fixedThreadPool.awaitTermination(30, TimeUnit.SECONDS)) {
fixedThreadPool.shutdownNow();
}
} catch (InterruptedException e) {
fixedThreadPool.shutdownNow();
}
}
}
在这个示例中,我们创建了一个固定大小为3的线程池,并提交了10个任务。每个任务都会打印出它正在运行的线程名称,然后休眠2秒,最后打印出任务完成的信息。在所有任务提交完成后,我们关闭了线程池。
以上就是关于“java newfixedthreadpool任务怎样提交”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm