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

复制代码
@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);
    }
}
相关推荐
龙仔72543 分钟前
人大金仓 KingbaseES V8 只读账号创建完整运维笔记
运维·笔记·sql·人大金仓
我不管我就要叫小猪1 小时前
嵌入式Linux----网络通信
linux·运维·服务器
江湖有缘1 小时前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器
泡沫冰@1 小时前
ECS 的介绍和使用
linux·服务器·网络
笨鸟先飞,勤能补拙1 小时前
AI 赋能网络安全领域深度剖析
网络·人工智能·windows·安全·web安全·网络安全·github
姜太小白2 小时前
【Linux】df -h 卡住问题的通用排查与解决方案总结
linux·运维·php
fengyehongWorld2 小时前
Linux 终端快捷键
linux·运维
我上去就是一套QWER然后等待复活2 小时前
Windows 清理 CC Switch 并恢复官方 Codex CLI 登录流程(完整记录)
windows
看昭奚恤哭3 小时前
平滑加权轮询负载均衡的底层逻辑
运维·负载均衡
hyf3266333 小时前
泛程序:从零开始搭建稳定程序项目框架
运维·服务器·爬虫·百度·seo