Java 线程池

Java 线程池

线程池(懒汉模式)

管理线程的一套解决方案,主要作用:

  1. 控制线程数量
    线程数量过多会导致过多的资源消耗,并且会导致CPU过度切换降低整体并发性能
  2. 重用线程
    线程不应当随着任务的声明周期一致,频繁的创建和销毁线程也会给系统带来额外的开销
	// 创建固定大小的线程池
	ExcutorService threadPool = Executors.newFixedThreadPool(int num);	// 创建线程池内最大num个线程同时执行
	
	// 创建线程
	// 开始全部将线程加入线程池 
	// 执行num个线程同时执行
	for(int i=0;i<5;i++){
		Runnable r = new Runnable(){
			public void run(){
				try{
					Thread t = Thread.currentThread();
					System.out.println(t.getName());
					Thread.sleep(5000);
					System.out.println(t.getName());
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		};
		threadPool.execute(r);
	}
	
	threadPool.shutdown();			// -> 所有线程执行完成停止线程池
	threadPool.shutdownNow();		// -> 线程池立刻停止

你可能感兴趣的:(Java基础)