package com.atguigu.juc;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
【线程池分配】public class TestScheduledThreadPool {
public static void main(String[] args) throws Exception {
//线程数量为5的线程池
ScheduledExecutorService pool = Executors.newScheduledThreadPool(5);
//分配任务
for (int i = 0;
i < 5;
i++) {
Future future = pool.schedule(new Callable() {@Override
public Integer call() throws Exception {
int num = (int)(Math.random() * 101);
System.out.println(Thread.currentThread().getName() + ": " + num);
return num;
}}, 3, TimeUnit.SECONDS);
System.out.println(future.get());
}
//释放资源
pool.shutdown();
}
}