ExecutorService

简介:     import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; import java.

 

 

import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;

public class ExecutorServiceTest {

	 public static void main(String[] args) {
		 ExecutorService exe =null;
		 exe = Executors.newFixedThreadPool(5);
		 //创建固定数目线程的线程池。
		// exe = Executors.newSingleThreadExecutor();
		 //创建一个单线程化的Executor
		 //exe = Executors.newCachedThreadPool();
		 //创建一个可缓存的线程池,调用execute将重用以前构造的线程(如果线程可用)。如果现有线程没有可用的,则创建一个新线 程并添加到池中。终止并从缓存中移除那些已有 60 秒钟未被使用的线程。
		 //exe = Executors.newScheduledThreadPool(1);
		 //创建一个支持定时及周期性的任务执行的线程池,多数情况下可用来替代Timer类
		 System.out.println("-=====================" + System.currentTimeMillis());
		 exe.submit(()->{
			 try {
				Thread.sleep(1000);
			} catch (Exception e) { 
				e.printStackTrace();
			}
			 System.out.println("-=====================" + System.currentTimeMillis());
		 });
		 System.out.println("-=====================" + System.currentTimeMillis());
		 exe.shutdown();
		 
		 
		 ScheduledExecutorService sexe = Executors.newScheduledThreadPool(1);
		 sexe.scheduleAtFixedRate(()->{ 
			 System.out.println("-==sexe===================" + System.currentTimeMillis());
		 }, 0, 2, TimeUnit.SECONDS);
		 
		 
		 
		 BlockingQueue<Runnable> bqueue = new ArrayBlockingQueue<Runnable>(20); 
	     //创建线程池,池中保存的线程数为3,允许的最大线程数为5
	     ThreadPoolExecutor pool = new ThreadPoolExecutor(3,5,50,TimeUnit.MILLISECONDS,bqueue); 
	     
	     
	}

}

 

 

 

 

 

 

 

 

 

 

 

捐助开发者 

在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(支持支付宝和微信 以及扣扣群),没钱捧个人场,谢谢各位。

 

个人主页http://knight-black-bob.iteye.com/



 
 
 谢谢您的赞助,我会做的更好!

 

目录
相关文章
|
7月前
|
缓存 Java
Java线程池ExecutorService
Java线程池ExecutorService
62 0
|
9月前
|
机器学习/深度学习 消息中间件 存储
ThreadPoolExecutor解读
ThreadPoolExecutor解读
|
9月前
|
缓存 Java 编译器
Executors 正确使用的姿势是怎么样?
Executors 正确使用的姿势是怎么样?
65 0
|
数据采集 缓存 安全
Executors 与 Thread 比较
Executors 与 Thread 比较
75 0
|
消息中间件 Dubbo Java
“既生 ExecutorService, 何生 CompletionService?”
“既生 ExecutorService, 何生 CompletionService?”
“既生 ExecutorService, 何生 CompletionService?”
|
算法 安全 Java
深入理解ThreadPoolExecutor
深入理解ThreadPoolExecutor
深入理解ThreadPoolExecutor
|
存储 缓存 监控
ThreadPoolExecutor:线程池不允许使用Executors创建
ThreadPoolExecutor:线程池不允许使用Executors创建
349 0
ThreadPoolExecutor:线程池不允许使用Executors创建
|
Java
ThreadPoolExecutor详解
详细介绍了ThreadPoolExecutor线程池的各种参数和各种使用场景以及线程池中线程的创建时刻和策略
4184 0
|
Java
ThreadPoolExecutor
一 核心属性 1  int corePoolSize 指该线程池中核心线程数最大值 核心线程:线程池新建线程的时候,如果当前线程总数小于corePoolSize,则新建的是核心线程,如果超过corePoolSize,则新建的是非核心线程。
4666 0