个人学习笔记:java常用线程池及相关的接口

1、Runnable接口与Callable接口

(1)Runnable接口

//Runnable接口的唯一方法,无返回值,也不会抛出异常
void run()

(2)Callable接口

//callable的唯一方法
//返回计算结果,或者如果无法执行则抛出异常。
V	call() throws Exception
2、Future框架

(1)Future接口主要方法:

//尝试取消执行此任务。如果任务已完成,已取消或由于某些其他原因无法取消,则此尝试将失败。
boolean cancel(boolean mayInterruptIfRunning)
//如果此任务在正常完成之前被取消则返回true。
boolean isCancelled()
//如果此任务完成,则返回true。
//完成可能是由于正常终止,例外或取消,在所有这些情况下,此方法将返回true。
boolean isDone()
//需要等待计算完成,然后获取其结果。
V get()throws InterruptedException,ExecutionException
V get(long timeout,TimeUnit unit)throws InterruptedException,ExecutionException,TimeoutException

(2)RunnableFuture接口,是Runnable接口Future接口的子接口。除此之外它本身只有一个run方法。

void run()

(3)FutureTask类,实现了RunnableFuture接口。
构造函数:

//创建一个FutureTask在运行时执行给定的Callable。
FutureTask(Callable<V> callable)
//在运行时创建一个FutureTask执行给定的Runnable,get并在成功完成时返回给定的结果result。
FutureTask(Runnable runnable, V result)

并可通过get方法获取计算结果。

3、Executor接口:

这个接口只有一个方法,在将来的某个时间执行给定的命令。根据Executor实现的判断,该命令可以在新线程,池化线程或调用线程中执行。

void execute(Runnable command)
4、ExecutorService接口(Executor接口的子接口)

主要方法submit。

//提交值返回任务以执行并返回表示任务的挂起结果的Future。
//Future的get方法将在成功完成后返回任务的结果。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值