固定线程池就不用说了,看看就知道了,主要是编写人员不用关注线程池如何调度线程,只用关注线程任务上,使用起来非常方便。
import java.util.concurrent.*;
public class TestThreadPool {
public static void main(String[] args){
//创建容量为5的线程池
ExecutorService exec=Executors.newFixedThreadPool(5);
for(int index=0;index<10;index++){
Runnable run=new Runnable(){
public void run(){
long time=(long)(Math.random()*1000);
System.out.println("sleep:"+time+" ss ");
try{
Thread.sleep(time);
}catch (Exception e) {
// TODO: handle exception
}
}
};
exec.execute(run);
}
exec.shutdown();
}
}
import java.util.concurrent.*;
public class TestThreadPool {
public static void main(String[] args){
//创建容量为5的线程池
ExecutorService exec=Executors.newFixedThreadPool(5);
for(int index=0;index<10;index++){
Runnable run=new Runnable(){
public void run(){
long time=(long)(Math.random()*1000);
System.out.println("sleep:"+time+" ss ");
try{
Thread.sleep(time);
}catch (Exception e) {
// TODO: handle exception
}
}
};
exec.execute(run);
}
exec.shutdown();
}
}