使用方法很简单,有两种使用方法
1.直接传递一批任务给到多线程处理方法,返回处理结果
代码如下:
/** * created with intellij idea. * 测试多线程处理任务 * classname: taskmulthreadservicetest * * @version 1.0 * date time: a *@author: ddys */public class taskmulthreadservicetest extends testcase implements itaskhandle<string,boolean>{ public void testexecute() throws exception { string [] taskitems = new string[100]; for (int i=0;i<100;i++){ taskitems[i]="任务"+i; } imulthreadservice<string,boolean> multhreadservice = new taskmulthreadservice(this); long start = system.currenttimemillis(); list<boolean> result = multhreadservice.execute(taskitems); for (boolean e : result){ if(!e){ system.out.println("任务处理失败"); } } system.out.println("所有任务处理完成,耗时"+(system.currenttimemillis()-start)+",任务成功数"+result.size()); } /** * created with intellij idea. * 执行任务,返回所有执行的结果 * classname: taskmulthreadservice * * @author: ddys * @version 1.0 * date time: */ public boolean execute(string s) { system.out.println(thread.currentthread().getid()+"线程正在处理"+s); return true; } }
2.附带一个查询任务的方法,实现这个查询任务方法和业务处理方法,然后执行返回处理结果
代码如下:
ate time: a *@author: xwk */ public class selecttaskmulthreadservicetest extends testcase implements iselecttask<string,boolean>{ public void testexecute() throws exception { imulthreadservice<string,boolean> multhreadservice = new selecttaskmulthreadservice(this); long start = system.currenttimemillis(); list<boolean> result = multhreadservice.execute(); for (boolean e : result){ if(!e){ system.out.println("任务处理失败"); } } system.out.println("所有任务处理完成,耗时"+(system.currenttimemillis()-start)+",任务成功数"+result.size()); } /** * created with intellij idea. * 执行任务,返回所有执行的结果 * classname: taskmulthreadservice * * @author: ddys * @version 1.0 * date time: */ public boolean execute(string s) { system.out.println(thread.currentthread().getid()+"线程正在处理"+s); return true; } /** * @param 'a 传递参数 * @return a 回类型 * @throws * @title: a * @description: 获取一批任务 * @author ddys * @date 2015-11-15 21:09 */ public string[] gettaskitem() { string [] taskitems = new string[100]; for (int i=0;i<100;i++){ taskitems[i]="任务"+i; } return taskitems; } }
