Jfinal 线程池的使用

比如我有多个人同时访问一个Controller里某个方法,如何使用线程池来执行任务?

评论区

杜福忠

2018-07-27 15:23

Controller {
//线程池
private static ExecutorService exec = new ThreadPoolExecutor(1
, 300
, 0L
, TimeUnit.MILLISECONDS
, new LinkedBlockingQueue(1024)
, new ThreadFactory(){ @Override public Thread newThread(Runnable r) { return new Thread(r); }}
, new ThreadPoolExecutor.AbortPolicy());

//开始使用
public void index(){
exec .submit(new Runnable() {
@Override
public void run() {
//调用你的 业务代码
}
})
renderJson(true);
}

}

迟到的微笑

2018-07-28 11:37

@杜福忠 如果说我这个Controller 中有多个方法的话,怎么只用写一次这个线程池?

杜福忠

2018-07-29 15:31

@迟到的微笑 exec 是static 的, 所以, 其他方法直接用这个成员变量就可以了

迟到的微笑

2018-07-30 14:43

@杜福忠 哦,好的,多谢

热门反馈

扫码入社