1.创建线程池
public class ThreadUtil {
public static ThreadPoolExecutor DATA_FIX_POOL = new ThreadPoolExecutor(30, 30, 300, TimeUnit.SECONDS,
new LinkedBlockingDeque<>(), new ThreadFactoryBuilder().setNameFormat("thread_pool_%d").build());
}
2.处理数据
// 需要循环处理的数据
List<bean> list = null;
list.forEach(dto -> {
ThreadUtil.DATA_FIX_POOL.execute(()->{
try {
doSomeThing();
} catch (Exception e) {
log.error("数据处理出错", e);
}
});
});