线程池
Posted zhangyugeng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线程池相关的知识,希望对你有一定的参考价值。
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
public class ThreadDemo5 {
public static void main(String[] args) {
/**
* 创建几个线程
* 下面只创建3个线程去执行任务task
* ExecutorService exe=Executors.newFixedThreadPool(3);
*
* 创建单个线程去执行任务(线程死掉会重新启动)
* ExecutorService threadPool = Executors.newSingleThreadExecutor();
*/
/**
* 创建线程缓冲区
* 下面会创建10个线程
*/
ExecutorService exe=Executors.newCachedThreadPool();
for( int j=0;j<10;j++){
final int fi=j; //为什么要用final
exe.execute(new Runnable(){
@Override
public void run() {
for(int i=0;i<10;i++)
{System.out.println(Thread.currentThread().getName()+" "+i+"次"+"task "+fi );}
}
} );
}
/**
* 定时器
*/
ExecutorService scheduled=Executors.newScheduledThreadPool(3);
Executors.newScheduledThreadPool(3).scheduleAtFixedRate //在固定速率调度
(new Runnable(){
@Override
public void run() {
System.out.print("bomb!");
}
}, 10, 2, TimeUnit.SECONDS); //10秒 2秒 单位
}
}
以上是关于线程池的主要内容,如果未能解决你的问题,请参考以下文章