Executor控制器是jdk1.5之后新增的工具类。用于作为一个中介来统一管理并发任务。
1.CacheThreadPool 将为每个任务都开一个线程:
ExecutorService exec = Executors.newCachedThreadPool();
for (int i = 0; i < 2; i++) {
final int c = i;
exec.execute(new Runnable(){
public void run() {
// TODO Auto-generated method stub
System.out.println(c+":"+Thread.currentThread().getName());
}}
);
}
exec.shutdown();
shutdown()方法的调用可以防止新任务被提交给Executor
2.FixedThreadPool 将使用有限的线程来完成任务,貌似线程池的概念,使用的线程不会超过指定的数量
ExecutorService exec = Executors.newFixedThreadPool(1);
3.SingleThreadExecutor 只生成一个线程,所有的任务都会在这一个线程里执行,貌似是顺序执行的。前一个任务执行完成后才会执行后面的任务。这些任务将会形成一个队列的形式。
ExecutorService exec = Executors.newSingleThreadExecutor();
4.ScheduledExecutorService 可以替代定时器来做任务分配
ScheduledExecutorService scheduExec = Executors
.newScheduledThreadPool(1);
分享到:
相关推荐
《汪文君JAVA多线程编程实战》是一本专注于Java多线程编程的实战教程,由知名讲师汪文君倾力打造。这本书旨在帮助Java开发者深入理解和熟练掌握多线程编程技术,提升软件开发的效率和质量。在Java平台中,多线程是...
对于初学者来说,理解并掌握Java多线程是进阶到更复杂系统设计的关键步骤。下面将详细阐述Java多线程的核心概念、实现方式以及`JFrameThread.java`文件可能涉及的知识点。 1. **线程概念**: 线程是程序执行的最小...
Java线程是多任务编程的重要概念,特别是在大型的、复杂的软件系统中,它允许程序同时执行多个不同的任务,提升程序的并发性和效率。本示例"简单的Java线程demo"旨在帮助初学者理解如何在Java中创建和管理线程。 在...
- "[浪曦][传智播客]Java多线程与并发库高级应用 第22讲 空中网挑选实习生的面试题-3.avi"和"第21讲"可能包含了一些面试中常问的问题及解答,帮助理解和准备面试。 - "第23讲 源代码与资料.rar"可能包含了相关的...
Java多线程编程是Java编程领域中的一个重要概念,它允许程序...总之,Java多线程编程是提高软件性能和响应能力的关键技术,通过学习和实践PPT中的内容,初学者可以逐步建立起对多线程的理解,并在实际项目中运用自如。
本教程聚焦于JAVA基础和IDEA的使用,同时也涵盖了多线程的概念以及IDEA的卸载过程。 首先,让我们来探讨JAVA基础。Java是一门面向对象的编程语言,以其“一次编写,到处运行”的特性而闻名。它的核心概念包括类、...
一、Java多线程基础 1. 线程创建方式: - 继承Thread类:自定义一个类继承Thread,重写run()方法,然后创建该类的实例并调用start()方法启动线程。 - 实现Runnable接口:创建一个实现Runnable接口的类,重写run()...
总之,《Java Concurrency in Practice》是理解Java多线程编程的最佳资源之一,无论你是初学者还是经验丰富的开发者,都能从中受益匪浅。通过学习这本书,你可以掌握处理并发问题的技巧,写出更稳定、高效的Java并发...
【Java开发资料】涵盖的主题是Java编程中的多线程技术...总的来说,这份“Java开发资料”将全面覆盖Java多线程编程的理论与实践,无论你是初学者还是有经验的开发者,都能从中获取有价值的知识,提升你的并发编程能力。
Java是一种广泛使用的面向对象编程语言,它具有跨平台、面向对象、分布式、解释执行、健壮安全、高性能、多线程以及可移植性等特点。在深入学习Java时,基础语法、面向对象、IO操作、线程处理和网络编程等方面是必须...
此外,Java 5之后引入的并发工具类(如Executor框架、ConcurrentHashMap)也大大简化了多线程编程的复杂度。 #### 结语 Java程序设计涉及的知识点广泛且深入,本文仅能触及冰山一角。对于初学者而言,扎实的语法...
这些工具库包括在 `java.util.concurrent` 包内,提供了丰富的类和接口来支持多线程编程。该文档由多位专家共同编写,包括 Brian Goetz、Doug Lea、Tim Peierls、Joe Bowbeer 和 David Holmes 等人。以下是文档的...
7. 并发编程:Java提供了丰富的并发工具,如Executor框架、线程池、并发集合等,使得多线程编程更加便捷和高效。 8. Java虚拟机(JVM):JVM是Java运行的基础,它负责解释和优化字节码,使得Java程序运行高效。 9....
通过阅读《Java 并发编程实战》,开发者将能够掌握Java并发编程的核心概念和最佳实践,提升在多线程环境下的编程能力,从而写出更高效、更稳定的并发应用程序。无论是初学者还是经验丰富的开发人员,都能从中...
每个章节的代码示例都将深入到这些主题的实际应用,比如异常处理的实战例子、多线程的并发控制以及集合框架中各种数据结构的实现。通过这些代码,学习者可以理解如何在实际项目中运用Java的这些核心特性,提高解决...
- 线程:Java提供多线程支持,允许程序同时执行多个任务。 - 同步机制:包括synchronized关键字、锁、volatile变量等,用于解决线程安全问题。 - Executor框架:管理线程池,提高系统效率和资源利用率。 5. **...
7. **多线程**:介绍线程的创建、同步和通信,包括synchronized关键字、wait/notify机制以及ExecutorService。 8. **垃圾回收与内存管理**:讲解Java的自动内存管理机制,包括垃圾收集的工作原理和性能优化。 9. *...
- PATH变量的设置使得用户可以在任意目录下使用Java编译器(javac)和Java解释器(java)。 #### 二、基本数据类型、变量和运算符 - **数据类型** - Java中每种数据类型都有明确的内存大小,如整型、浮点型、...