Java多线程入门4-实现Callable接口创建线程

本文介绍了Java中使用Callable接口创建线程的步骤,包括实现Callable接口、重写call方法、创建线程池、提交执行任务以及获取结果。同时,文章讨论了Callable与Runnable的区别,并指出在实际工作中通常基于线程池使用Callable接口。最后,解释了Callable是如何通过FutureTask和Thread类协同工作来创建线程的。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  Callable接口类似于Runnable,但 Runnable不返回结果,也不能抛出被检查的异常。

一、JDK帮助手册

  打开JDK帮助手册,搜索Callable

在这里插入图片描述

  帮助手册告诉我们,Executors类包含实现方法,我们再搜索Executors

在这里插入图片描述

  JDK并未给出创建线程的示例,需要另外寻找资料列出详细创建过程。

二、创建过程与代码示例

  1、实现Callable接口,需要返回值类型;

  2、重写call方法,需要抛出异常;

  3、创建目标对象实例 t;

  4、创建执行服务:ExecutorService ser = Executor.newFixedThreadPool(1);

  5、提交执行:Future result = ser.submit(t);

  6、获取结果:boolean r = result.get();

  7、关闭服务:ser.shutdownNow();

  实现Callable接口创建线程:

public class ThreadDemo3 implements Callable<Boolean> {
   
    @Override
    public Boolean call() throws Exception {
   
        for(int i = 0; i < 10; i++) {
   
            // 休眠100毫秒,以免CPU执行太快,看不出实验结果
            Thread.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值