`
endual
  • 浏览: 3558701 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java 并发库 Future 和 Collable的使用

    博客分类:
  • java
 
阅读更多

package endual;

import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;

public class MainApp {

 /**
  * @param args
  */
 public static void main(String[] args) {

  ExecutorService threadPool = Executors.newSingleThreadExecutor() ;
  Future<String> fu = threadPool.submit(new Callable<String>() {
   public String call() throws Exception {
    // TODO Auto-generated method stub
    return "Hello" ;
   }
  }) ;
  String msg = null ;
  try {
    msg = fu.get() ;
  } catch (InterruptedException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (ExecutionException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  System.out.println(msg);
 }

}

package endual;

import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;

public class MainApp {

	/**
	 * @param args
	 */
	public static void main(String[] args) {

		ExecutorService threadPool = Executors.newSingleThreadExecutor() ;
		Future<String> fu = threadPool.submit(new Callable<String>() {
			public String call() throws Exception {
				// TODO Auto-generated method stub
				return "Hello" ;
			}
		}) ;
		String msg = null ;
		try {
			 msg = fu.get() ;
		} catch (InterruptedException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (ExecutionException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out.println(msg);
	}

}

 

分享到:
评论

相关推荐

    Java 并发编程实战.pdf

    此外,该书可能会对Java中一些新的并发API进行探讨,如java.util.concurrent包下的工具类和接口,例如Executor框架、Future、CompletableFuture、ConcurrentHashMap、Semaphore等。这些工具类和接口在构建大规模并发...

    java并发编程实战源码,java并发编程实战pdf,Java

    3. **并发控制**:Java提供了多种并发控制工具,包括synchronized、wait()、notify()、notifyAll()、ReentrantLock(可重入锁)、Semaphore(信号量)和CountDownLatch(倒计时器)等。这些工具用于协调不同线程的...

    java并发编程库

    总结起来,J.U.C库是Java并发编程中不可或缺的一部分,它以丰富的并发工具类、高效的执行效率和简洁的API设计,帮助开发者构建起强大的并发应用程序。通过理解J.U.C的工作原理和应用方法,开发者不仅能够编写出性能...

    java并发库高级应用源码--张孝祥

    在《java并发库高级应用源码--张孝祥》中,我们将会深入探讨Java中的线程管理和并发控制策略,这对于我们理解和优化多线程程序至关重要。 首先,Java中的`Thread`类是实现并发的基础,它代表了一个独立的执行线程。...

    java并发编程内部分享PPT

    最后,Java并发编程还涉及到Future和Callable接口,它们用于异步计算和获取结果。Executor框架中的FutureTask类结合了Future和Runnable,可以在任务完成后获取结果。 总的来说,这份“java并发编程内部分享PPT”...

    java并发编程2

    Java并发编程是Java开发中的重要领域,特别是在多核处理器和分布式系统中,高效地利用并发可以极大地提升程序的性能和响应速度。以下是对标题和描述中所提及的几个知识点的详细解释: 1. **线程与并发** - **线程*...

    Java并发编程实践高清pdf及源码

    Java平台提供了丰富的API来支持并发,如`Thread`类、`ExecutorService`接口和`Future`接口等。这些工具允许开发者设计出能够充分利用多核处理器性能的高效程序。 书中详细讲解了以下关键知识点: 1. **线程安全**...

    java并发编程实战(英文版)

    书中通过实例解释了诸如`ExecutorService`、`Future`、`Callable`、`BlockingQueue`等高级并发工具类的使用方法,并详细阐述了如何利用这些工具来构建可伸缩、高性能的应用系统。 #### 二、并发基础知识 本书不仅...

    《java 并发编程实战高清PDF版》

    《Java并发编程实战》是一本深入探讨Java平台并发编程的权威指南。这本书旨在帮助开发者理解和掌握在Java环境中创建高效、可扩展且可靠的多线程应用程序的关键技术和实践。它涵盖了从基本概念到高级主题的广泛内容,...

    JAVA并发编程艺术pdf版

    《JAVA并发编程艺术》是Java开发者深入理解和掌握并发编程的一本重要著作,它涵盖了Java并发领域的核心概念和技术。这本书详细阐述了如何在多线程环境下有效地编写高效、可靠的代码,对于提升Java程序员的技能水平...

    (PDF带目录)《Java 并发编程实战》,java并发实战,并发

    4. **并发工具类**:`java.util.concurrent`包还包含一系列并发工具类,如`ExecutorService`、`Future`、`Callable`等,它们简化了任务的提交、管理和结果获取,使并发编程更加灵活和高效。 5. **原子变量**:Java...

    JAVA并发编程实践.pdf+高清版+目录 书籍源码

    最后,作者还讨论了并发编程的最佳实践,包括线程池的使用、Future和Callable接口,以及如何通过并发工具类来简化异步编程。这些内容有助于开发者编写出更加优雅、可维护的并发代码。 附带的源码文件可能是书中示例...

    java并发编程书籍

    Java并发编程是软件开发中的一个关键领域,尤其是在大型企业级应用和分布式系统中。通过学习相关的书籍,开发者可以深入理解如何有效地设计和实现高效的多线程应用程序,避免并发问题,如竞态条件、死锁、活锁等。...

    java 并发编程的艺术pdf清晰完整版 源码

    Java语言提供了丰富的并发工具和API,如线程、守护线程、线程池、同步机制(synchronized、wait/notify)、并发集合(ConcurrentHashMap、CopyOnWriteArrayList等)以及并发框架(ExecutorService、Future、Callable...

    java并发编程艺术

    并发编程是现代多核处理器环境下提升软件性能的关键手段,而Java语言提供了丰富的工具和API来支持这一领域。本书旨在帮助开发者理解和掌握如何在Java应用程序中有效地实现并行处理。 并发编程的核心概念包括线程、...

    java NIO和java并发编程的书籍

    java NIO和java并发编程的书籍java NIO和java并发编程的书籍java NIO和java并发编程的书籍java NIO和java并发编程的书籍java NIO和java并发编程的书籍java NIO和java并发编程的书籍java NIO和java并发编程的书籍java...

    java并发编程与实践

    Java提供了一个强大的并发API,包括Thread类、Runnable接口以及ExecutorService和Future等工具类,使得开发者能够构建可扩展和高性能的应用。 该文档可能涵盖了以下几个关键知识点: 1. **线程基础**:解释了如何...

    Java并发编程实践.pdf

    ### Java并发编程实践 #### 一、并发编程基础 ##### 1.1 并发与并行的区别 ...通过上述知识点的学习,我们可以更好地理解和掌握Java并发编程的基本原理和技巧,为开发高效稳定的并发应用程序打下坚实的基础。

Global site tag (gtag.js) - Google Analytics