@Component
@Slf4j
@Async
public class ThreadSaveDigCategory {
private static final int BATCH_COUTN = 1000;
@Autowired
private Mapper mapper;
public Future<Boolean> saveDigCategoryDatas(List<DigCategoryData> digCategoryDataList){
//开始计时
long startTime = System.currentTimeMillis();
// mapper.saveDigCategoryData(digCategoryDataList);
//数据分批处理
List<List<DigCategoryData>> batchList = BathProcessUtil.batchList(digCategoryDataList, BATCH_COUTN);
for (List<DigCategoryData> batch : batchList){
mapper.saveDigCategoryData(batch);
}
//endTime
long endTime = System.currentTimeMillis();
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(endTime-startTime);
log.info("耗时: " + calendar.get(Calendar.MINUTE) + "分 " + calendar.get(Calendar.SECOND) + "秒 " +
calendar.get(Calendar.MILLISECOND) + " 微秒" + "-" + "数据保存成功");
return new AsyncResult<>(true);
}
}
多线程返回计时问题代码案例
928-y2023-11-09 13:43
相关推荐
kakakahahahaha15 分钟前
LoadLibrary failed with error 87 排查:ERROR_INVALID_PARAMETER、DLL路径、架构与显卡驱动硅基手札21 分钟前
【linux内核专栏 08】时间与定时器想做小南娘,发现自己是女生喵40 分钟前
Linux之Ubuntu入门篇知识总结CHEEVEN_QY1 小时前
搅拌摩擦焊FSW工艺参数对焊缝成形影响的实验研究10.1帷幕落秋2 小时前
Redis哨兵模式H.莓飛2 小时前
【数据结构】链表_OJ题百事牛科技2 小时前
7Z分卷文件怎么打开?7-Zip解压方法详解木白CPP2 小时前
USB(一): USB 概述&&介绍熬夜敲代码的猫2 小时前
Linux:进程概念刘胡子大叔2 小时前
1Panel 部署 ThinkPHP8 踩坑实录