文档章节

executor

writeademo
 writeademo
发布于 2016/03/12 21:49
字数 206
阅读 6
收藏 0
package com.threadTest;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;

//转载于:http://www.cnblogs.com/yezhenhan/archive/2012/01/09/2317636.html
/**
 * 
 * 
 * * @ClassName: TestExecutor
 * 
 * @Description: 
 *               TODO(联系executor,future,ExecutorService,Callable等类在多线程的使用submit,shutdown方法
 *               )
 * @author KXD
 * @date 2016年3月12日 下午9:46:07
 */
public class TestExecutor
{
    public static void main(String[] args) throws InterruptedException,
            ExecutionException
    {
        System.out.println("程序开始运行");
        Date date1 = new Date();
        int taskSize = 5;
        ExecutorService pool = Executors.newFixedThreadPool(taskSize);
        List<Future> list = new ArrayList<Future>();
        for (int i = 0; i < taskSize; i++)
        {
            Callable c = new MyCallable(i + "");
            Future f = pool.submit(c);
            list.add(f);
        }
        pool.shutdown();
        for (Future f : list)
        {
            System.out.println("<<<<<<" + f.get().toString());
        }

    }
}

class MyCallable implements Callable<Object>
{
    private String taskNum;

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

    @Override
    public Object call() throws Exception
    {
        System.out.println(">>>" + taskNum + "任务启动");
        Date dateTmpl = new Date();
        Thread.sleep(1000);
        Date dateTmpl2 = new Date();
        long time = dateTmpl2.getTime() - dateTmpl.getDate();
        System.out.println(">>>" + taskNum + "任务结束");
        return taskNum + "务返回运行结果,当前任务时间【" + time + "毫秒】";
    }

}


© 著作权归作者所有

writeademo
粉丝 27
博文 681
码字总数 256388
作品 0
东城
私信 提问
求救,为什么会报这个错啊

2018-01-30 10:16:16 xxl-job-executor-example [org.apache.ibatis.io.DefaultVFS]-[RMI TCP Connection(3)-127.0.0.1]-[debug]-[54]-[DEBUG] Listing file:/C:/Users/lwy/Desktop/code/crm......

zhenghaoLi
2018/01/30
677
0
Azkaban的Web Server源码探究系列24: 一次性执行execute任务取出处理

提交之后,很不幸,有个问题如下: 抓包分析: 请求和响应分别如下: 所以接下来需要对这个URL进行debug ============================================================================== ...

强子哥哥
2016/04/10
334
0
spark中的动态executor分配

动态分配executor的实例初始化部分 如果spark.executor.instances配置项设置为0或者没有设置,这个默认情况下是一个未设置的值,yarn的运行模式时,这个配置通过--num-executors来得到. 同时spa...

hblt-j
2018/11/15
57
0
聊聊jdk httpclient的executor

序 本文主要研究一下jdk httpclient的executor HttpClientImpl java.net.http/jdk/internal/net/http/HttpClientImpl.java 这里如果HttpClientBuilderImpl的executor为null,则会创建Executo......

go4it
2018/09/30
38
0
Java并发开发包--util.concurrent

util.concurrent 是一个 Java 语言的并发开发包,示例代码: public class Executor { private static Logger logger = Logger.getLogger(Executor.class); private static PooledExecutor e......

匿名
2009/05/23
5.6K
0

没有更多内容

加载失败,请刷新页面

加载更多

PostgreSQL 11.3 locking

rudi
今天
5
0
Mybatis Plus sql注入器

一、继承AbstractMethod /** * @author beth * @data 2019-10-23 20:39 */public class DeleteAllMethod extends AbstractMethod { @Override public MappedStatement injectMap......

一个yuanbeth
今天
10
1
一次写shell脚本的经历记录——特殊字符惹的祸

本文首发于微信公众号“我的小碗汤”,扫码文末二维码即可关注,欢迎一起交流! redis在容器化的过程中,涉及到纵向扩pod实例cpu、内存以及redis实例的maxmemory值,statefulset管理的pod需要...

码农实战
今天
4
0
为什么阿里巴巴Java开发手册中不建议在循环体中使用+进行字符串拼接?

之前在阅读《阿里巴巴Java开发手册》时,发现有一条是关于循环体中字符串拼接的建议,具体内容如下: 那么我们首先来用例子来看看在循环体中用 + 或者用 StringBuilder 进行字符串拼接的效率...

武培轩
今天
8
0
队列-链式(c/c++实现)

队列是在线性表功能稍作修改形成的,在生活中排队是不能插队的吧,先排队先得到对待,慢来得排在最后面,这样来就形成了”先进先出“的队列。作用就是通过伟大的程序员来实现算法解决现实生活...

白客C
今天
81
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部