FutureTask
因为实现了runnable接口,所以重写了run方法

Future接口如果用在多线程中,实现类一般是有一个volatile的属性,用来标志状态,比如state,如果事情做完了,那么会设置state为成功,以便其他线程来检测这个future有没有完成的时候使用。
至于task,那是要执行的任务,run方法用来执行,执行完了,要赋值给outcome,这是存储结果。当然也可以不存储结果,如果这个并不需要这个task的结果的话。
FutureTask的更多相关文章
- Java--FutureTask原理与使用(FutureTask可以被Thread执行,可以被线程池submit方法执行,并且可以监控线程与获取返回值)
		
package com; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; i ...
 - FutureTask的使用
		
package org.zln.thread.pool.ft;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.ut ...
 - java并发编程学习:如何等待多个线程执行完成后再继续后续处理(synchronized、join、FutureTask、CyclicBarrier)
		
多线程应用中,经常会遇到这种场景:后面的处理,依赖前面的N个线程的处理结果,必须等前面的线程执行完毕后,后面的代码才允许执行. 在我不知道CyclicBarrier之前,最容易想到的就是放置一个公用的 ...
 - Java并发编程:Callable、Future和FutureTask
		
作者:海子 出处:http://www.cnblogs.com/dolphin0520/ 本博客中未标明转载的文章归作者海子和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置 ...
 - java.util.concurrent.RejectedExecutionException: Task java.util.concurrent.FutureTask@1f303192 rejected from java.util.concurrent.ThreadPoolExecutor@11f7cc04[Terminated, pool size = 0, active threads
		
java.util.concurrent.RejectedExecutionException: Task java.util.concurrent.FutureTask@1f303192 rejec ...
 - Java多线程21:多线程下的其他组件之CyclicBarrier、Callable、Future和FutureTask
		
CyclicBarrier 接着讲多线程下的其他组件,第一个要讲的就是CyclicBarrier.CyclicBarrier从字面理解是指循环屏障,它可以协同多个线程,让多个线程在这个屏障前等待,直到 ...
 - Callable、Future、RunnableFuture、FutureTask的原理及应用
		
1. Callable.Future.RunnableFuture.FutureTask的继承关系 在多线程编程中,我们一般通过一个实现了Runnable接口的对象来创建一个线程,这个线程在内部会执行 ...
 - 线程池之 Callable、Future、FutureTask
		
java线程中的异步和同步,并不是走路,一定要搞清楚.那么join方法嘛,就是异步变同步.线程阻塞,就再楼下一直等着它想要的状态出现喽.直接上代码,先来看Future获取线程执行结果的使用示例: pu ...
 - 由FutureTask的get方法靠什么机制来阻塞引发的思考
		
1. FutureTask的get方法靠什么机制来阻塞 看其get方法源码: /** * @throws CancellationException {@inheritDoc} */ public V ...
 - paip.java 多线程参数以及返回值Future FutureTask 的使用.
		
paip.java 多线程参数以及返回值Future FutureTask 的使用. 在并发编程时,一般使用runnable,然后扔给线程池完事,这种情况下不需要线程的结果. 所以run的返回值是vo ...
 
随机推荐
- Lab 3-2
			
Analyze the malware found in the file Lab03-02.dll using basic dynamic analysis tools. Questions and ...
 - Lab 3-1
			
Analyze the malware found in the file Lab03-01.exe using basic dynamic analysis tools. Questions and ...
 - sgu 169 Numbers
			
题意:n和n+1同时被数位乘积整除的k位数个数. 假如a是237,b是238.由于个位以前的数一样.那么对于2,如果a%2==0,b%2就!=0,如果a%3==0,b%3就!=0.因此个位以前的数只能 ...
 - 微信小程序如何导入字体图标
			
前提:我们已经拥有了从阿里图标库下载下来的一系列的字体图标文件1:找个其中的ttf格式的文件,然后打开https://transfonter.org/网站2:点击Add fonts按钮,加载ttf格式 ...
 - 一篇文章一张思维导图看懂Android学习最佳路线(转载)
			
Android学习路线从4个阶段来对Android的学习过程做一个全面的分析:Android初级.中级.高级以及资深工程师.只针对Android应用开发,不针对Rom开发和逆向工程等.方便起见虚拟“小 ...
 - Runable和Thread
			
Java多线程 java中有两种实现多线程的方式: 1. 一种是通过继承Thread类,同时重写run()方法.但是java中,只允许单继承,也就是一个类只能继承一个父类,使得该方式具有一定的局限性, ...
 - 模拟spring的IoC
			
1.新建一个web项目,jdk版本为1.8.0_111,使用 Jsp + Servlet + Model 实现MVC模式,并使用BeanFactory工厂 + xml配置文件 + 反射 来解耦合 整个 ...
 - PAT 1009 Product of Polynomials
			
1009 Product of Polynomials (25 分) This time, you are supposed to find A×B where A and B are two p ...
 - Oracle查询前几条数据的方法
			
在Oracle中实现select top N:由于Oracle不支持select top 语句,所以在Oracle中经常是用order by 跟rownum的组合来实现select top n的查询. ...
 - 如何使a标签打开新页面并阻止刷新当前页面
			
错误: HTML中,使用href属性时,当前页面和新页面均跳转到URL指定的页面,即当前页面也刷新: <li id='goToBack'><a href='**.action' ta ...