Java_多线程_创建和使用Java自带的线程池
2015-02-04 18:20
495 查看
package test; public class MyThread implements Runnable { @Override public void run() { for (int i = 0; i < 50; i++) { System.out.println(Thread.currentThread().getName() + "----->" + i); } } }
package test; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class Test { public static void main(String[] args) { MyThread myThread1 = new MyThread(); MyThread myThread2 = new MyThread(); MyThread myThread3 = new MyThread(); MyThread myThread4 = new MyThread(); MyThread myThread5 = new MyThread(); Thread mt1 = new Thread(myThread1); Thread mt2 = new Thread(myThread2); Thread mt3 = new Thread(myThread3); Thread mt4 = new Thread(myThread4); Thread mt5 = new Thread(myThread5); // 创建一个可重用固定线程数的线程池 ExecutorService executorService = Executors.newFixedThreadPool(2); // 将线程放入池中进行执行 executorService.execute(mt1); executorService.execute(mt2); executorService.execute(mt3); executorService.execute(mt4); executorService.execute(mt5); // 关闭线程池 executorService.shutdown(); } }输出:
pool-1-thread-2----->0
pool-1-thread-1----->0
pool-1-thread-2----->1
pool-1-thread-1----->1
pool-1-thread-2----->2
pool-1-thread-1----->2
pool-1-thread-2----->3
pool-1-thread-1----->3
pool-1-thread-1----->4
pool-1-thread-1----->5
pool-1-thread-1----->6
pool-1-thread-1----->7
pool-1-thread-1----->8
pool-1-thread-1----->9
pool-1-thread-2----->4
pool-1-thread-1----->10
pool-1-thread-2----->5
pool-1-thread-1----->11
pool-1-thread-2----->6
pool-1-thread-1----->12
pool-1-thread-2----->7
pool-1-thread-1----->13
pool-1-thread-2----->8
pool-1-thread-1----->14
pool-1-thread-2----->9
pool-1-thread-1----->15
pool-1-thread-2----->10
pool-1-thread-1----->16
pool-1-thread-2----->11
pool-1-thread-1----->17
pool-1-thread-2----->12
pool-1-thread-1----->18
pool-1-thread-2----->13
pool-1-thread-2----->14
pool-1-thread-1----->19
pool-1-thread-2----->15
pool-1-thread-1----->20
pool-1-thread-2----->16
pool-1-thread-1----->21
pool-1-thread-2----->17
pool-1-thread-1----->22
pool-1-thread-2----->18
pool-1-thread-2----->19
pool-1-thread-2----->20
pool-1-thread-1----->23
pool-1-thread-2----->21
pool-1-thread-1----->24
pool-1-thread-2----->22
pool-1-thread-1----->25
pool-1-thread-2----->23
pool-1-thread-1----->26
pool-1-thread-2----->24
pool-1-thread-1----->27
pool-1-thread-1----->28
pool-1-thread-2----->25
pool-1-thread-1----->29
pool-1-thread-2----->26
pool-1-thread-1----->30
pool-1-thread-2----->27
pool-1-thread-1----->31
pool-1-thread-2----->28
pool-1-thread-1----->32
pool-1-thread-2----->29
pool-1-thread-1----->33
pool-1-thread-2----->30
pool-1-thread-1----->34
pool-1-thread-2----->31
pool-1-thread-1----->35
pool-1-thread-2----->32
pool-1-thread-1----->36
pool-1-thread-2----->33
pool-1-thread-1----->37
pool-1-thread-2----->34
pool-1-thread-1----->38
pool-1-thread-2----->35
pool-1-thread-1----->39
pool-1-thread-2----->36
pool-1-thread-1----->40
pool-1-thread-2----->37
pool-1-thread-1----->41
pool-1-thread-2----->38
pool-1-thread-1----->42
pool-1-thread-2----->39
pool-1-thread-1----->43
pool-1-thread-2----->40
pool-1-thread-1----->44
pool-1-thread-2----->41
pool-1-thread-1----->45
pool-1-thread-2----->42
pool-1-thread-1----->46
pool-1-thread-2----->43
pool-1-thread-1----->47
pool-1-thread-2----->44
pool-1-thread-1----->48
pool-1-thread-2----->45
pool-1-thread-1----->49
pool-1-thread-2----->46
pool-1-thread-2----->47
pool-1-thread-1----->0
pool-1-thread-2----->48
pool-1-thread-1----->1
pool-1-thread-2----->49
pool-1-thread-1----->2
pool-1-thread-2----->0
pool-1-thread-1----->3
pool-1-thread-2----->1
pool-1-thread-1----->4
pool-1-thread-2----->2
pool-1-thread-1----->5
pool-1-thread-2----->3
pool-1-thread-1----->6
pool-1-thread-2----->4
pool-1-thread-1----->7
pool-1-thread-2----->5
pool-1-thread-1----->8
pool-1-thread-2----->6
pool-1-thread-1----->9
pool-1-thread-2----->7
pool-1-thread-1----->10
pool-1-thread-2----->8
pool-1-thread-1----->11
pool-1-thread-2----->9
pool-1-thread-1----->12
pool-1-thread-2----->10
pool-1-thread-1----->13
pool-1-thread-2----->11
pool-1-thread-1----->14
pool-1-thread-2----->12
pool-1-thread-1----->15
pool-1-thread-2----->13
pool-1-thread-1----->16
pool-1-thread-2----->14
pool-1-thread-1----->17
pool-1-thread-2----->15
pool-1-thread-1----->18
pool-1-thread-2----->16
pool-1-thread-1----->19
pool-1-thread-2----->17
pool-1-thread-1----->20
pool-1-thread-2----->18
pool-1-thread-1----->21
pool-1-thread-2----->19
pool-1-thread-1----->22
pool-1-thread-2----->20
pool-1-thread-1----->23
pool-1-thread-2----->21
pool-1-thread-1----->24
pool-1-thread-2----->22
pool-1-thread-1----->25
pool-1-thread-2----->23
pool-1-thread-1----->26
pool-1-thread-2----->24
pool-1-thread-1----->27
pool-1-thread-2----->25
pool-1-thread-1----->28
pool-1-thread-2----->26
pool-1-thread-1----->29
pool-1-thread-2----->27
pool-1-thread-1----->30
pool-1-thread-2----->28
pool-1-thread-1----->31
pool-1-thread-2----->29
pool-1-thread-1----->32
pool-1-thread-2----->30
pool-1-thread-1----->33
pool-1-thread-2----->31
pool-1-thread-1----->34
pool-1-thread-2----->32
pool-1-thread-1----->35
pool-1-thread-2----->33
pool-1-thread-1----->36
pool-1-thread-2----->34
pool-1-thread-1----->37
pool-1-thread-2----->35
pool-1-thread-1----->38
pool-1-thread-2----->36
pool-1-thread-1----->39
pool-1-thread-2----->37
pool-1-thread-1----->40
pool-1-thread-2----->38
pool-1-thread-1----->41
pool-1-thread-2----->39
pool-1-thread-1----->42
pool-1-thread-2----->40
pool-1-thread-1----->43
pool-1-thread-2----->41
pool-1-thread-1----->44
pool-1-thread-2----->42
pool-1-thread-1----->45
pool-1-thread-2----->43
pool-1-thread-1----->46
pool-1-thread-2----->44
pool-1-thread-1----->47
pool-1-thread-2----->45
pool-1-thread-1----->48
pool-1-thread-2----->46
pool-1-thread-1----->49
pool-1-thread-2----->47
pool-1-thread-1----->0
pool-1-thread-2----->48
pool-1-thread-1----->1
pool-1-thread-2----->49
pool-1-thread-1----->2
pool-1-thread-1----->3
pool-1-thread-1----->4
pool-1-thread-1----->5
pool-1-thread-1----->6
pool-1-thread-1----->7
pool-1-thread-1----->8
pool-1-thread-1----->9
pool-1-thread-1----->10
pool-1-thread-1----->11
pool-1-thread-1----->12
pool-1-thread-1----->13
pool-1-thread-1----->14
pool-1-thread-1----->15
pool-1-thread-1----->16
pool-1-thread-1----->17
pool-1-thread-1----->18
pool-1-thread-1----->19
pool-1-thread-1----->20
pool-1-thread-1----->21
pool-1-thread-1----->22
pool-1-thread-1----->23
pool-1-thread-1----->24
pool-1-thread-1----->25
pool-1-thread-1----->26
pool-1-thread-1----->27
pool-1-thread-1----->28
pool-1-thread-1----->29
pool-1-thread-1----->30
pool-1-thread-1----->3
4000
1
pool-1-thread-1----->32
pool-1-thread-1----->33
pool-1-thread-1----->34
pool-1-thread-1----->35
pool-1-thread-1----->36
pool-1-thread-1----->37
pool-1-thread-1----->38
pool-1-thread-1----->39
pool-1-thread-1----->40
pool-1-thread-1----->41
pool-1-thread-1----->42
pool-1-thread-1----->43
pool-1-thread-1----->44
pool-1-thread-1----->45
pool-1-thread-1----->46
pool-1-thread-1----->47
pool-1-thread-1----->48
pool-1-thread-1----->49
相关文章推荐
- [Java多线程]-线程池的基本使用和部分源码解析(创建,执行原理)
- Java【多线程知识总结(6)】使用Runnable接口创建多线程,处理同一个资源
- java多线程系列_使用Runnable接口创建线程(3)
- Java多线程之~~~使用ThreadPoolExecutor来创建线程
- 黑马程序员_java用java进行复制文件(考虑使用多线程),能系统自带快吗??
- java多线程-专题-聊聊并发(三)Java线程池的分析和使用
- Java【多线程知识总结(6)】使用Runnable接口创建多线程,处理同一个资源
- Java中线程池创建与使用
- 使用新的java线程池技术创建固定的线程去完成任务,都完成后计算总时间
- 我之见--java多线程 线程池使用
- Java中的线程创建,以及使用四种线程池对线程进行管理
- 初学Java多线程:使用Runnable接口创建线程
- java创建多线程使用Executors创造ExecutorService
- 黑马程序员,用Executors来创建三种java的自带线程池
- 3. 初学Java多线程:使用Runnable接口创建线程
- 初学Java多线程:使用Runnable接口创建线程
- java创建多线程使用Executors创造ExecutorService
- java多线程编程之使用thread类创建线程
- Java:多线程,线程池,使用CompletionService通过Future来处理Callable的返回结果
- Java多线程编程-使用JDK1.6的线程池