Package com.luna.common.thread
Class CommonThreadPoolUtil
java.lang.Object
com.luna.common.thread.CommonThreadPoolUtil
ClassName:CommenThreadPoolUtil
Function:线程池公共入口处理类.
Function:线程池公共入口处理类.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiondealTask:(线程池执行操作-不包含每个进程返回结果).dealTask:(线程池执行操作-包含每个进程返回结果).int
获取核心线程数 getCacheCorePoolSize:().static void
obtainTaskFuture:(获取线程池执行结果:此为阻塞线程,即所有线程都执行完成才能获取结果,故应将执行时间稍长的业务逻辑先执行, 减少等待时间).void
refresh()
void
setCacheCorePoolSize
(int cacheCorePoolSize) 设置核心线程数 setCacheCorePoolSize:().
-
Constructor Details
-
CommonThreadPoolUtil
-
-
Method Details
-
main
-
refresh
public void refresh() -
getThreadPool
-
dealTask
dealTask:(线程池执行操作-包含每个进程返回结果).
1、运用场景:例如,需要同时校验很多不同的逻辑,依赖于获取校验结果响应给用户; 2、具体实现java类:implements 的Callable接口,重写call方法即可,支持返回值- Parameters:
callable
-- Returns:
-
dealTask
dealTask:(线程池执行操作-不包含每个进程返回结果).
1、运用场景:例如,不依赖于响应给用户执行结果的业务逻辑 ; 2、具体实现java类:implements 的Runnable接口,重写run方法,没有返回值- Parameters:
runnable
-- Returns:
-
obtainTaskFuture
obtainTaskFuture:(获取线程池执行结果:此为阻塞线程,即所有线程都执行完成才能获取结果,故应将执行时间稍长的业务逻辑先执行, 减少等待时间).
此方法只能调用一次,即调用之后清除ThreadLocal变量,以便于同一进程再次调用线程池获取最新的执行结果以及释放内存, 防止内存泄露- Returns:
-
getCacheCorePoolSize
public int getCacheCorePoolSize()获取核心线程数 getCacheCorePoolSize:().- Returns:
-
setCacheCorePoolSize
public void setCacheCorePoolSize(int cacheCorePoolSize) 设置核心线程数 setCacheCorePoolSize:().- Parameters:
cacheCorePoolSize
-
-