多线程学习记录2-java5的一些线程池
2013-01-20 15:03
525 查看
public class Test4 { public static void main(String[] args) { /**固定线程池:线程池中的线程是固定数量*/ // ExecutorService threadPool = Executors.newFixedThreadPool(3); /**缓存线程池,线程池中的线程数量不定,随任务数量的变化来动态修改池中的线程数*/ // ExecutorService threadPool = Executors.newCachedThreadPool(); /**单线程池:线程池中只有一个线程,并且保证会有一个,如果池中的线程死亡了就又会生成一个。提交的任务都会被执行?*/ ExecutorService threadPool = Executors.newSingleThreadExecutor(); for (int i=0; i<10; i++){ final int task = i; threadPool.execute(new Runnable() { @Override public void run() { for (int i=0; i<10; i++){ try { Thread.sleep(20); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println(Thread.currentThread().getName() + ":" + i + ":task" + task); } } }); } System.out.println("the end..."); //关闭线程池 threadPool.shutdown(); //等待线程执行完后结束 // threadPool.shutdownNow(); //不管线程是否执行完任务都结束 /**定时器线程池:1-在固定的时间之后执行一个任务。2-在固定的时间之后执行一个任务,然后每隔一段时间又执行一次任务*/ Executors.newScheduledThreadPool(3).schedule( new Runnable() { @Override public void run() { System.out.println("定时器到时。"); } }, 6, TimeUnit.SECONDS); } }
相关文章推荐
- 整合之前的一些学习记录4(java开发环境配置相关)
- 0041 Java学习笔记-多线程-线程池、ForkJoinPool、ThreadLocal
- Java多线程编程--(8)学习Java5.0 并发编程包--线程池、Callable & Future 简介
- Java多线程学习笔记——从Java JVM对多线程数据同步的一些理解
- 黑马程序员Java培训、Android培训-Java 学习过程记录_多线程2
- Java中的一些常用的杂项学习记录
- 【java】 学习JAVA看过的一些类,记录下来。
- Java多线程编程--(6)学习Java5.0 并发编程包--原子操作的一些类型
- 学习Java中使用Netbeans的一些记录
- 黑马程序员Java培训、Android培训-Java 学习过程记录_多线程3
- 【java学习记录】11.用多线程实现阶乘的计算过程和结果的读取(thread类ReadThread )
- Android学习记录(6)—将java中的多线程下载移植到Android中(即多线程下载在Android中的使用)③
- 记录学习的点滴(Java多线程计数器)
- Android学习记录(6)—将java中的多线程下载移植到Android中(即多线程下载在Android中的使用)③
- java多线程学习笔记之自定义线程池
- 今年大二,要开始java的学习了,听前辈说记录一下自己的学习过程会有一些好处
- 对于Java学习的一些看法,记录心得也是学习的一种方式
- Java多线程学习笔记——从Java JVM对多线程数据同步的一些理解
- Android学习记录(6)—将java中的多线程下载移植到Android中(即多线程下载在Android中的使用)③
- java的I/O学习记录(以及一些其他知识点)