package test;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class TestExecutor {
public static void main(String[] args) throws Exception {
// ExecutorService executor = Executors.newCachedThreadPool();//无限大小的线程池
// executor = Executors.newSingleThreadExecutor();//创建单线程的线程池
// executor = Executors.newFixedThreadPool(3);//固定大小的线程池
ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);//创建具有3个线程大小的定时调度线程池!
for (int i = 0; i < 10; i++) {
final int index = i;
executor.scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
System.out.println(Thread.currentThread().getName()+"x="+index);
}
}, 3, 2, TimeUnit.SECONDS);//使用秒作为单位,3秒后开始执行,而后,每2秒执行一次
}
// executor.shutdown();
}
}