多线程返回计时问题代码案例

复制代码
@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);
    }
}
相关推荐
kakakahahahaha15 分钟前
LoadLibrary failed with error 87 排查:ERROR_INVALID_PARAMETER、DLL路径、架构与显卡驱动
windows·电脑·笔记本电脑·nvidia·软件需求
硅基手札21 分钟前
【linux内核专栏 08】时间与定时器
linux·运维·服务器
想做小南娘,发现自己是女生喵40 分钟前
Linux之Ubuntu入门篇知识总结
linux·运维·服务器
CHEEVEN_QY1 小时前
搅拌摩擦焊FSW工艺参数对焊缝成形影响的实验研究10.1
linux·服务器·数据库
帷幕落秋2 小时前
Redis哨兵模式
运维·数据库
H.莓飛2 小时前
【数据结构】链表_OJ题
linux·数据结构·算法·链表
百事牛科技2 小时前
7Z分卷文件怎么打开?7-Zip解压方法详解
windows·7-zip
木白CPP2 小时前
USB(一): USB 概述&&介绍
linux·网络·嵌入式硬件
熬夜敲代码的猫2 小时前
Linux:进程概念
linux
刘胡子大叔2 小时前
1Panel 部署 ThinkPHP8 踩坑实录
linux·ubuntu