`
fuerbosi
  • 浏览: 463917 次
文章分类
社区版块
存档分类
最新评论

Java自带的Future多线程模式

 
阅读更多

在Java5后,提供了大量处理多线程的接口,以前只是简单的使用其线程池,最近发现Future模式也有。

  只贴出了部分代码:

  定义池:

  1. private static final ExecutorService worker = Executors.newFixedThreadPool(N);// 线程池

  2. private static List

  使用线程池:

  1.futureList.add(worker.submit(this));

  结束线程:

  1. // 结束线程池中的线程执行(中断)

  2. public static void cancel() {

  3.for (Future f : futureList) {

  4. f.cancel(true);

  5. }

  6. }

  注:Future为线程的执行结果票据,当使用Callable方式执行时可以得到线程的执行结果f.get(),同时也可以控制某线程的结束和执行状态。当使用Runnable方式执行时,得到结果是空,但也可以对线程进行控制。

  补充:

  应该是调用了线程的中断方法Thread.currentThread()。interrupt();但并不像stop方法那样立即结束掉子线程,而是改变了中断的信号量Thread.interrupted(),在阻塞的线程会抛出InterruptedException异常,但是在非阻塞的条件下子线程会继续执行,需要在循环中自己判断信号量来抛出异常。

-------------------------------------------------------------------------------------------------

移动开发者大会:Android开发者将越来越赚钱 海量Android教程、开发资料和源码

10类最急需IT人才:Java开发者居首给将成为“Android高手”的10个建议

成为Java高手的25个学习目标--非常经典 Android 4.1果冻豆新特性详解

芯片巨头海思和展讯:给中国芯片业带来信心 海量经典Java教程、学习资料和源码

Java侵权诉讼Google获胜,Android厚积薄发 面试必备:Android笔试总结

Android高手必须掌握的28大内容和10个建议 Android平台研发人才缺口30万

Android开发环境安装和配置步骤详细图解 2012国内移动App开发者大调查结果

Windows 7下搭建android开发环境步骤图解 Android 4.0的30个突出的新特性

Android高手要经过的6个阶段和6个境界 linux下搭建Android开发环境步骤

从IT菜鸟变为“IT骨干开发者”的11个建议 程序员编程技术迅速提高的终极攻略

2012世界各国人均GDP排名,中国超泰国 2012年全国各省平均工资排行

2012年中国大学高校排行榜(580强排名) 中国各省市面积和人口数量排名

中国百万开发者大调查:程序员的薪水不错 Java高手需要越过的10座高山

周立功谈嵌入式:我的25年嵌入式生涯 Android和Java语言的异同和关系

华为中国区手机销量达千万,80%为智能机 谷歌Android碎片化严重

2012年中国各省GDP和人均GDP排名 90后就业“钱景”:IT仍是最佳选择

2012全球城市竞争力500强,69个中国城市上榜不要做浮躁的软件工程师

2012年世界500强,79家大陆香港台湾公司上榜名单 给IT新兵的15个建议

美国知名科技公司入门级软件工程师的薪水排名回顾Java经过的风风雨雨

71道经典Android面试题和答案--重要知识点都涉及到了

高校应届毕业生“IT业”收入最高,Android技术最热门

分享到:
评论

相关推荐

    java多线程设计模式详解(PDF及源码)

    (注意,本资源附带书中源代码可供参考) 多线程与并发处理是程序设计好坏优劣的重要课题,本书通过浅显易懂的文字与实例来介绍Java线程相关的设计模式概念,并且通过实际的Java程序范例和 UML图示来一一解说,书中...

    Java使用Callable和Future创建线程操作示例

    主要介绍了Java使用Callable和Future创建线程操作,结合实例形式分析了java使用Callable接口和Future类创建线程的相关操作技巧与注意事项,需要的朋友可以参考下

    Java利用future及时获取多线程运行结果

    在Java编程中,有时候会需要及时获取线程的运行结果,本文就通过一个相关实例向大家介绍Java利用future及时获取线程运行结果的方法,需要的朋友可以参考。

    java多线程设计模式 (PDF中文版, 附源码)

    目录: 漫谈UML Introduction 1 Java语言的线程 Introduction 2 多线程...总结 多线程程序设计的模式语言 附录A 练习问题的解答 附录B Java的内存模型 附录C Java线程的优先级 附录D 线程相关的主要API 附录E 参考文献

    Java多线程详解

    Java多线程模式详解 目录: 一、漫谈UML Java语言的线程 多线程的评量标准 二、 1、Single Threaded Execution ———— 能通过这座桥的,只有一个人 2、Immutable ———— 想破坏它也没办法 3、Guarded ...

    java多线程编程 新api

    java 多线程编程 很实用 来自网上 1)包括新api介绍 2)新线程接口 Callable 和 Future 的讲解 3)线程同步知识

    Java多线程之异步Future机制的原理和实现

    主要为大家详细介绍了Java多线程之异步Future机制的原理和实现,感兴趣的小伙伴们可以参考一下

    线程超时死掉

    Future接口是Java线程Future模式的实 现,可以来进行异步计算。 Future模式可以这样来描述:我有一个任务,提交给了Future,Future替我完成这个任务。期间我自己可以去做任何想做的事情。一段时 间之后,我就便...

    Java多线程之异步Future机制的原理和实现共5页.p

    Java多线程之异步Future机制的原理和实现共5页.pdf.zip

    Java-多线程异步请求统一响应结果.docx

    Java-多线程异步请求统一响应结果 多线程异步请求是指在多个线程同时发起请求,并且在请求过程中不阻塞主线程的执行。这样可以提高程序的并发能力和响应速度。 需要注意的是,在实际的异步请求中,可能需要使用...

    java面试题_多线程(68题).pdf

    1. 什么是线程?...在Java Concurrency API中有哪些原⼦类(atomic classes)? 8. 什么是Executors框架? 9. 什么是阻塞队列?如何使⽤阻塞队列来实现⽣产者-消费者模型? 10. 什么是Callable和Future?

    java 线程池与通过Future终止线程实例

    NULL 博文链接:https://waitingkkk-163-com.iteye.com/blog/2232286

    Android(Java)之多线程结果返回——Future 、FutureTask、Callable、Runnable

    http://blog.csdn.net/yangzhaomuma/article/details/51722779

    多线程编程之future库使用

    c++11多线程编程库中的future库的使用实例,供多线程编程参考学习

    Java多线程Callable和Future接口区别

    主要介绍了Java多线程Callable和Future接口区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    java多线程Future和Callable类示例分享

    JAVA多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。今天我们...

    个人总结的深入java多线程开发

    看完《think in java》多线程章节,自己写的多线程文档,还结合了其他的相关网络资料。 线程 一. 线程池 1)为什么要使用线程池 2 2)一个具有线程池的工作队列 3 3)使用线程池的风险: 4 4)有效使用线程池的原则 5...

    java8源码-GraphicMultiThreadDesignPattern:图解Java多线程设计模式

    记录自己学习《图解Java多线程设计模式》这本书的全部过程 本书上传的所有代码都是可以运行的,在此附上本书源码地址: 在此向本书作者和译者表示感谢 运行环境 Eclipse版本:Oxygen.2 Release (4.7.2) JDK版本:jdk...

    浅谈Java多线程处理中Future的妙用(附源码)

    主要介绍了浅谈Java多线程处理中Future的妙用(附源码),还是比较不错的,需要的朋友可以参考下。

Global site tag (gtag.js) - Google Analytics