`

线程简单运用(二)

阅读更多

线程的简单运用(二)

Java5之前使用线程 是实现Runnable接口,没有返回值。

现在可以实现Callable接口,实现有返回值的线程。

以下是使用实例:

业务代码:

import java.util.concurrent.Callable;

public  class MyCallable implements Callable{
    private String oid;

    MyCallable(String oid) {
            this.oid = oid;
    }

    @Override
    public Object call() throws Exception {
            return oid+"任务返回的内容";
    }
}

 测试代码:

import java.util.concurrent.*;

//Java线程:有返回值的线程
public class Test {
    public static void main(String[] args) throws ExecutionException, InterruptedException {
        //创建一个线程池
        ExecutorService pool = Executors.newFixedThreadPool(1);
        //创建两个有返回值的任务
        Callable c1 = new MyCallable("A");
        Callable c2 = new MyCallable("B");
        //执行任务并获取Future对象
        Future f1 = pool.submit(c1);
        Future f2 = pool.submit(c2);
        //从Future对象上获取任务的返回值,并输出到控制台
        System.out.println(">>>"+f1.get().toString());
        System.out.println(">>>"+f2.get().toString());
        //关闭线程池
        pool.shutdown();
    }
}

 运行测试代码打印结果为:

>>>A任务返回的内容
>>>B任务返回的内容

0
0
分享到:
评论

相关推荐

    打字游戏 运用多线程实现

    老师写的一个简单的打字游戏,运用了多线程开发,功能简单,适合初学者

    [『辅助』] 易编远航第一期-六套大漠多线程中级进阶视频教程

    使用同步器作为多线程中级教材,主要是对上一套初级教程做一个简单的总结, 并且对接下来脚本的线程处理,及监控线程起到一个较高的实际认知。 对多线程基 础及后续多线程课程有承前启后的作用 主要学习内容: 1....

    简单的多线程程序

    简单的多线程程序,简单的创建一个多线程程序,在图像采集等领域有较好的运用,例子是多线程打印输出一些文字,适合初学者。

    android线程之间通信原理

    本例中简单运用了线程间通信原理,简单明了,适合初学线程通信

    简单的龟兔赛跑,运用多线程,在jdk8编写.zip

    简单的龟兔赛跑,运用多线程,在jdk8编写

    java多线程代理IP池

    运用多线程的技术,在极短的时间内获取大量的ip进行筛选。架构也比较清楚,方便大家学习参考 需要主要的是,代理ip获取成功后是放在redis里面的,有关redis的参数配置在baseDB里面配置。当然对于没有开redis,我也...

    VC多线程和定时器 实例

    通过简单例子实现多线程,把界面和数据计算分开,又在其中运用定时器

    vb.net多线程委托托管实例.rar Thread委托托管实例

    本重新为vb.net多线程委托托管实例源码,主要有以下功能模块: 1.Thread多线程技术功能模块, 2.3个实例窗体如何进行委托托管及参数传输功能模块 ...程序以最简单的实例告诉你如何运用多线程及委托技术。

    java用多线程进行排序算法的比较

    这是一个简单的运用多线程的程序 主要对快速排序等多个算法进行比较

    简易聊天程序_java网络编程多线程

    java编译的控制台版多人简易聊天程序,运用了ServerSocket和Socket网络编程,还用了多线程,I/O流等技术.可以私聊,可以群聊!

    Silverlight 线程、跨线程源码实例

    (当然,这只是一个线程的简单应用,如果只是需要更改背景色其实没必要用线程,完全可以用Time控件之类的实现。但本实例的主要目的是让大家清楚线程在Silverlight中应用的方法,方便大家以后运用与扩展)

    时钟:java多线程写的源代码

    用java多线程模拟一个简单的时钟程序,希望大家提出宝贵意见。

    C#写的聊天软件,传统意义上的单线程异步模式

    这段代码跟我前面发的代码都是一个人写的,采用的就是传统意义上的单线程异步通讯模式,涉及到窗体的运用,有托盘图标的闪烁等等。代码不长,挺简单,只有两个form和一个公用类,相信想做关于C#窗体应用程序开发的...

    Java多线程设计模式(含实例源码)

    Java多线程设计模式,通过对多线程环境的分析,抽象出典型的多线程模型,结合Java编程语言的特性,总结出经典的多线程设计模式,通过本资料的学习,足以让您掌握如何使用JAVA...简单明了,帮助深入理解,从而灵活运用。

    c#线程精华知识txt版

    从简单到复杂让你深刻了解C#线程的精髓知识,让你在以后的开发中线程运用娴熟。

    Race_race_多线程_

    简单的龟兔赛跑,运用多线程,在jdk8编写

    java多线程抽奖器

    这是一个用java写的简单抽奖器,运用多线程技术,并且通过读取文件控制各奖项的上限,内含详细代码及使用说明。

    一些.NET对多线程异常处理技巧分享

    多线程环境 在我们的产品 SE 中,出现...我也曾经简单的将该方法运用于多线程的异常捕获,结果并非如此,代码如下: 代码如下: public static void Main() { try { new Thread (Go).Start(); } catch (Exception ex) {

    简单多线程下载工具开发文档

    本次课程设计的时间为1周,目的是通过实际的题目巩固学生对面向对象程序设计概念的理解和MFC的运用,掌握VC++开发应用程序的基本方法,进一步提高学生综合运用所学知识的能力。课程设计的内容及要求。

Global site tag (gtag.js) - Google Analytics