atitit.taskService 任务管理器的设计 v1
atitit.taskService 任务管理器的设计 v1
任务管理器的点
Sametime_exe_count
Per task sleepMillSec
Timeout_secs
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
package com.attilax.task;
import java.io.File;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.FutureTask;
import java.util.function.Function;
import org.openqa.jetty.http.SSORealm;
import org.sikuli.script.Screen;
import com.attilax.io.filex;
import com.attilax.io.pathx;
public class TaskService {
public ExecutorService fixedThreadPool;
private int threadCount;
private Callable task;
private int pertask_sleeptime_millsecs;
private Function task_getter;
public static void main(String[] args) {
new filex().In_the_pc_machine_directory("c:\\0011windows")
.written_to_the_file().comma()
.the_content_is("om_mani_padme_hum").the_file_name_is_random()
.the_extension_is("txt").exe_single();
System.out.println("--f");
Callable task_my = new Callable() {
@Override
public Object call() {
new filex().In_the_pc_machine_directory("c:\\0011windows")
.written_to_the_file().comma()
.the_content_is("om_mani_padme_hum").the_file_name_is_random()
.the_extension_is("txt").exe_single();
return null;
}
};
Function task_getter=new Function<Object,Callable>() {
@Override
public Callable apply(Object t) {
return task_my;
}
};
new TaskService().setTask(task_my).TasksCount(10).at_the_same_time().and_pertask_sleeptime_millsecs_is(100).exe();
}
private TaskService setTask(Callable task_my) {
//this.task_getter=task_my;
this.task=task_my;
return this;
}
private void exe() {
fixedThreadPool = Executors.newFixedThreadPool(this.threadCount);
//Callable apply = (Callable) this.task_getter.apply(null);
//FutureTask<Object> task = new FutureTask<Object>(apply);
for (double i = 5; i >0; ) {
try {
FutureTask<Object> task = new FutureTask<Object>(this.task);
fixedThreadPool.execute(task);
Thread.sleep(this.pertask_sleeptime_millsecs);
//i++
} catch (Exception e) {
e.printStackTrace();
}
}
}
private TaskService and_pertask_sleeptime_millsecs_is(int i) {
this.pertask_sleeptime_millsecs=i;
return this;
}
private TaskService at_the_same_time() {
// TODO Auto-generated method stub
return this;
}
private TaskService TasksCount(int i) {
this.threadCount=i;
return this;
}
}
atitit.taskService 任务管理器的设计 v1的更多相关文章
- Atitit 项目的主体设计与结构文档 v5
Atitit 项目的主体设计与结构文档 v5 1. 版本历史说明2 2. 功能大概说明2 3. 实现的目标3 3.1. cross device跨设备(pc 手机 平板)3 3.2. cross sc ...
- Atitit. null错误的设计 使用Optional来处理null
Atitit. null错误的设计 使用Optional来处理null 然后,我们再看看null还会引入什么问题. 看看下面这个代码: String address = person.getCount ...
- Atitit 项目的主体设计与结构文档 v3
Atitit 项目的主体设计与结构文档 v3 1. 实现的目标2 1.1. cross device跨设备(pc 手机 平板)作为规划2 1.2. 企业级Java体系与开发语言2 1.3. 高扩展性, ...
- Atitit.api参数传递的设计
Atitit.api参数传递的设计 · 引言 · 形参和实参 · 命名实参 · 可选参数 · params,数目可变参数 · 方法解析与重载决策 · 参数传递 [重难点] · ref引用参数 ...
- Eclipse+Selenium自动化测试脚本设计V1.0
Eclipse+Selenium自动化测试脚本设计V1.0 http://www.docin.com/p-803032251.html
- atitit.导出excel的设计----查询结果 导出为excel的实现java .net php 总结
atitit.导出excel的设计----查询结果 导出为excel的实现java .net php 总结 1. 基本的流程 查询获得list 读取jsp的table获得标题and 字段的map to ...
- atitit.html编辑器的设计要点与框架选型 attilax总结
atitit.html编辑器的设计要点与框架选型 attilax总结 1. html编辑器的设计要求1 1.1. 障碍訪问 1 1.2. 强大Ajax上传 1 1.3. Word完美支持 2 1.4. ...
- Atitit jquery 1.4--v1.11 v1.12 v2.0 3.0 的新特性
Atitit jquery 1.4--v1.11 v1.12 v2.0 3.0 的新特性 1.1. Jquery1.12 jQuery 2.2 和 1.12 新版本发布 - OPEN资讯.h ...
- Atitit 通用接口的设计与实现attilax 总结
Atitit 通用接口的设计与实现attilax 总结 1.1. 现存的情况1 1.2. 接口返回类型,与返回序列化格式1 1.3. 异常传递 代替返回值模式1 1.4. 通用接口原理1 1.5. A ...
随机推荐
- [BZOJ5465][APIO2018]选圆圈(KD-Tree)
题意:给你n个圆,每次选择半径最大的,将它和与它相交的圆全部删去,输出每个圆是在哪次被删的. KD树模板题.用一个矩形框住这个圆,就可以直接剪枝了.为了防止被卡可以将点旋转一个角度,为了保险还可以多转 ...
- [Contest20180311]朋友
是毒瘤的friends呢~ 注意到“产生感情”和后缀自动机的$Right$集合定义很像,所以先对所有串建广义sam,那么一个节点$s$里的所有串都互相产生感情,而从起点走到$s$走最长路所经过的节点里 ...
- 【数形结合】Gym - 100923I - Por Costel and the Pairs
perechi3.in / perechi3.out We don't know how Por Costel the pig arrived at FMI's dance party. All we ...
- [HDU6268]Master of Subgraph
[HDU6268]Master of Subgraph 题目大意: 一棵\(n(n\le3000)\)个结点的树,每个结点的权值为\(w_i\).给定\(m(m\le10^5)\),对于任意\(i\i ...
- Bootstrap-table使用footerFormatter做统计列
写在前面: 在做表格的时候,难免会碰到做统计的时候.由于在项目中涉及到做统计的功能比较简单,之后也就没有过多的去研究更复杂的,这里简单记录下. 这次就直接先上图:一个简单的例子 看到效果图还是很好的, ...
- codevs与noi做题改错本目录
从2016.2.13开始: 1. 排序超时的问题---------目录:-测试习题 2. 超高精度乘法超时问题-----------目录:高精度计算 算法:快速傅里叶算法. 压位算法 3. 高精度 ...
- java单例支持高并发
单例对象(Singleton)是一种常用的设计模式.在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在.这样的模式有几个好处: 1.某些类创建比较频繁,对于一些大型的对象,这是一笔 ...
- pythonGUI编程打开默认浏览器
代码: from tkinter import * import webbrowser root = Tk() text = Text(root,width=30,height = 5) text.p ...
- Java杂谈2——引用与跟搜索算法
Java中的引用 Java“引用”的概念源于C++,原本的定义相当有限:一个引用(Reference)代表的内存通常用于指向另一块内存区域的起始地址.通过引用类型保存的起始地址,可以找到这个引用所指向 ...
- FSLib.Extension库
FSLib.Extension库是一个用于.NET的扩展函数库,所提供的函数和方法均使用扩展方法引入,包含数以百计的用于日常编写程序时使用的扩展方法. http://www.fishlee.net/s ...