java的线程池,最简单利用(java疯狂讲义)




首先创建一个线程类:

package MultipleThread.ThreadPool;

public class Runnable2 implements Runnable {

	@Override
	public void run() {
		int i = 0;
		// TODO Auto-generated method stub
		for (i = 0; i < 20; i++) {
			System.out.println(Thread.currentThread().getName() + "       当前i的值为:" + i);
			if (i == 10) {
				try {
					Thread.sleep(10000);
				} catch (InterruptedException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
	}

}

测试类:(在这里面创建线程池):

package MultipleThread.ThreadPool;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

public class ThreadPoolTest {
	public static void main(String[] args) {
		// 创建一个具有固定线程数6的线程池
		ExecutorService pool = Executors.newFixedThreadPool(6);
		// 向线程池中提交两个线程,submit方法将在有空闲线程的时候执行线程对象的方法
		pool.submit(new Runnable2());
		pool.submit(new Runnable2());
		// 关闭线程池
		pool.shutdown();
	}
}
控制台打印如下:

pool-1-thread-1       当前i的值为:0
pool-1-thread-2       当前i的值为:0
pool-1-thread-1       当前i的值为:1
pool-1-thread-2       当前i的值为:1
pool-1-thread-1       当前i的值为:2
pool-1-thread-2       当前i的值为:2
pool-1-thread-1       当前i的值为:3
pool-1-thread-2       当前i的值为:3
pool-1-thread-1       当前i的值为:4
pool-1-thread-2       当前i的值为:4
pool-1-thread-1       当前i的值为:5
pool-1-thread-2       当前i的值为:5
pool-1-thread-1       当前i的值为:6
pool-1-thread-2       当前i的值为:6
pool-1-thread-1       当前i的值为:7
pool-1-thread-2       当前i的值为:7
pool-1-thread-1       当前i的值为:8
pool-1-thread-2       当前i的值为:8
pool-1-thread-1       当前i的值为:9
pool-1-thread-2       当前i的值为:9
pool-1-thread-1       当前i的值为:10
pool-1-thread-2       当前i的值为:10
pool-1-thread-1       当前i的值为:11
pool-1-thread-2       当前i的值为:11
pool-1-thread-2       当前i的值为:12
pool-1-thread-1       当前i的值为:12
pool-1-thread-2       当前i的值为:13
pool-1-thread-1       当前i的值为:13
pool-1-thread-1       当前i的值为:14
pool-1-thread-2       当前i的值为:14
pool-1-thread-1       当前i的值为:15
pool-1-thread-2       当前i的值为:15
pool-1-thread-1       当前i的值为:16
pool-1-thread-2       当前i的值为:16
pool-1-thread-1       当前i的值为:17
pool-1-thread-2       当前i的值为:17
pool-1-thread-1       当前i的值为:18
pool-1-thread-2       当前i的值为:18
pool-1-thread-1       当前i的值为:19
pool-1-thread-2       当前i的值为:19


猜你喜欢

转载自blog.csdn.net/handsome2013/article/details/80638745