博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
线程入门-使用Execcutor
阅读量:7107 次
发布时间:2019-06-28

本文共 1161 字,大约阅读时间需要 3 分钟。

hot3.png

Executor来代替上篇文章中显示地创建Thread对象。它在客户端和任务执行之间提供了一个间接层,与客户端直接执行任务不同,这个中介对象将执行任务。

/** * Created by Administrator on 2017/8/31. */public class LiftOff implements Runnable {    protected int countDown = 10;    private static int taskCount = 0;    private final int id = taskCount++;    public LiftOff() {    }    public LiftOff(int countDown) {        this.countDown = countDown;    }    public String status() {        return "#" + id + "(" +                (countDown > 0 ? countDown : "LiftOff!") + ")";    }    @Override    public void run() {        while (countDown-- > 0) {            System.out.print(status());            Thread.yield();        }    }}

 

import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;/** * Created by Administrator on 2017/8/31. */public class MainThread {    public static void main(String[] args) {        ExecutorService exec = Executors.newCachedThreadPool();        for (int i = 0; i < 5; i++) {            exec.execute(new LiftOff());        }        exec.shutdown();        System.out.print("等待发射\r\n");    }}

输出结果:

183545_yB5R_560971.png

 

exec.shutdown()可以防止新任务被提交给这个Executor

 

转载于:https://my.oschina.net/u/560971/blog/1527142

你可能感兴趣的文章
Linux信号列表
查看>>
11.11.24
查看>>
PHP面向对象之final关键字
查看>>
模块化编程
查看>>
关于visual studio 2010 与windows phone 的整合安装问题
查看>>
数据预处理规则
查看>>
为梦想,每天坚持30分钟
查看>>
振奋人心啊!!!!下一代.NET——ASP.NET vNext
查看>>
Windows 7 安装.net framework 4.0 失败,错误HRESULT 0xc8000222解决办法
查看>>
maven基础依赖外部lib包(依赖钉钉sdk为例)
查看>>
php7使用curl
查看>>
[ZJOI2010]贪吃的老鼠(网络流+建图)
查看>>
HTTPSQS(HTTP Simple Queue Service)消息队列
查看>>
Cortex-M3 入门指南(三):时钟总线与复位时钟控制器
查看>>
VBS 操作Excel
查看>>
3176:Cow Bowling
查看>>
RabbitMQ之概念介绍(二)
查看>>
Beetl学习总结(1)——新一代java模板引擎典范 Beetl入门
查看>>
copy算法
查看>>
又要转身
查看>>