java 给任务传递参数
之前https://www.cnblogs.com/kexb/p/10228369.html没有参数,这里介绍参数什么传入
package com.hra.riskprice; import com.hra.riskprice.SysEnum.Factor_Type;
import com.hra.riskprice.pojo.RskFactor;
import com.hra.riskprice.service.impl.RskFactorBulkMapper;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import java.util.*;
import java.util.concurrent.*; @SpringBootApplication
public class RiskpriceApplication { public static void main(String[] args) throws InterruptedException, ExecutionException{
new RiskpriceApplication().exec();
} void exec() throws InterruptedException, ExecutionException {
//进行异步任务列表
List<FutureTask<Integer>> futureTasks = new ArrayList<FutureTask<Integer>>();
//线程池 初始化十个线程 和JDBC连接池是一个意思 实现重用
ExecutorService executorService = Executors.newFixedThreadPool();
long start = System.currentTimeMillis();
int jj=;
//类似与run方法的实现 Callable是一个接口,在call中手写逻辑代码
for(int i=;i<;i++){
cccc c1=new cccc();
c1.setIndex(i);
FutureTask<Integer> futureTask = new FutureTask<Integer>(c1);
futureTasks.add(futureTask);
//提交异步任务到线程池,让线程池管理任务 特爽把。
//由于是异步并行任务,所以这里并不会阻塞
executorService.submit(futureTask);
} int count = ;
for (FutureTask<Integer> futureTask : futureTasks) {
//futureTask.get() 得到我们想要的结果
//该方法有一个重载get(long timeout, TimeUnit unit) 第一个参数为最大等待时间,第二个为时间的单位
count+= futureTask.get();
}
long end = System.currentTimeMillis();
System.out.println("线程池的任务全部完成:结果为:"+count+",main线程关闭,进行线程的清理");
System.out.println("使用时间:"+(end-start)+"ms");
//清理线程池
executorService.shutdown(); }
private int arg;
class cccc implements Callable<Integer>{
private int index;
public int getIndex(){
return index;
}
public void setIndex(int i){
this.index=i;
}
@Override
public Integer call() throws Exception {
System.out.println("任务执行 is "+index+"个");
Integer res = new Random().nextInt();
Thread.sleep();
System.out.println("任务执行:获取到结果 :"+res);
return res;
} }
}
java 给任务传递参数的更多相关文章
- Java调用函数传递参数到底是值传递还是引用传递
今天翻看微信上有关Java技术的公众号时,看到了一篇关于Java中值传递的问题,文章讨论了在Java中调用函数进行传参的时候到底是值传递还是引用传递这个面试时会问到的问题.之前也接触过类似的问题,但只 ...
- Java 给Thread传递参数
一开始我想把run()函数写成有参函数来传值,后来发现行不通.经过查找,最终用如下方法传递了参数: 也就是用另外一个有参函数setTar()传递参数. 调用的时候用这4行code传递参数: 上面是用i ...
- Java命令行传递参数
目录 命令行传参 代码运行 视频 命令行传参 有时候你希望运行一个程序的时候再传递给它消息. 这要靠传递命令行参数给main()函数实现 package com.broky.base; public ...
- Android,使用Intent或Bundle传递参数,跳转页面。
(1)使用Intent跳转页面: 第一个activity:MainActivity.java中: Intent myIntent = new Intent(); myIntent.putExtra(& ...
- JavaWeb_(Struts2框架)参数传递之接收参数与传递参数
此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核 ...
- [转] C++的引用传递、指针传递参数在java中的相应处理方法
原文出处:[http://blog.csdn.net/conowen/article/details/7420533] 首先要明白一点,java是没有指针这个概念的. 但是要实现C++的引用传递.指针 ...
- java方法强制传递引用参数(做为返回值),改变被传递参数值。
Java传递参数分为2种: 值类型,Java里面也叫简单类型,这种参数类型的传递的是它的副本拷贝: 引用类型,传递的是对象引用地址,如果在方法内改变该参数对象属性即是对原引用对象的改变:如果不想这样传 ...
- 工作随笔——Java调用Groovy类的方法、传递参数和获取返回值
接触Groovy也快一年了,一直在尝试怎么将Groovy引用到日常工作中来.最近在做一个功能的时候,花了点时间重新看了下Java怎么调用Groovy的方法.传递参数和获取返回值. 示例Groovy代码 ...
- java调用python程序以及向python程序传递参数
在做项目的时候,经常会碰到这个问题,主要程序是用java写的,有些功能使用python写的,整个项目需要把java代码和python代码进行整合,在一个项目里面运行,这就涉及到java调用python ...
随机推荐
- 对中断interrupt的理解
一.中断 线程的几种状态:新建.就绪.运行.阻塞.死亡.参考:线程的几种状态转换 线程的可运行状态并不代表线程一定在运行(runnable != running ) . 大家都知道:所有现代桌面和服务 ...
- 基于keras的fasttext短文本分类
### train_model.py ### #!/usr/bin/env python # coding=utf-8 import codecs import simplejson as json ...
- Python第一天:python2.x和python3.x的区别
查看Python版本 # python -V Python2.7.5是centos7中默认安装的Python [root@localhost ~]# python -V Python [root@lo ...
- FileProvider相关 Failed to find configured root that contains
问题: 使用FileProvider构造SD卡中文件uri时异常 java.lang.IllegalArgumentException: Failed to find configured root ...
- dede织梦后台页面及功能修改精简操作方法
有很多使用织梦程序的站长往往都不喜欢使用默认的后台,但对于很多小白站长其实也不太懂程序的功能,而且如果显示或者开了过多的功能只会给自己带来困扰,所以小白站长都喜欢一些傻瓜式的后台操作界面.那么,ded ...
- python 的序列化和反序列化
什么是序列化?简单来说就是将数据存储到物理内存上的过程叫序列化. 什么是反序列化?将数据从物理内存存储到程序内存的过程叫做反序列化. 下面来看一下python中使用json进行序列化和反序列化的实例d ...
- 三台linux集群hadoop,在此上面运行hive
---恢复内容开始--- 一,准备 先有三台linux,对hadoop集群的搭建. eddy01:开启一个hdfs的老大namenode,yarn的老大ResourceManager其中进程包括(No ...
- Spring的生命周期
转:https://blog.csdn.net/liuxilil/article/details/4676088 Spring的生命周期. 容器启动,实例化所有实现了BeanFactoyPostPro ...
- android 开发 View _16 自定义计步器View、自定义柱状图View
/** *@content:实现计步的环形View *@time:2018-7-30 *@build: */ public class CountStepsAnnularView extends Vi ...
- 序列化与反序列化之Kryo
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序列化:把字节序列恢复为对象的过程称为对象的反序列化. 需要序列化的情况: 当你想把的内存中的对象状态保存到一个文件中或者数据库中时候: 当你想 ...