多线程
文章平均质量分 57
多线程
_Romeo
知无不言,言无不尽。
展开
-
10秒内插入亿量级数据,我滴妈,真牛逼...
一、前言相信很多小伙伴都遇到过大数据量导入DB,或者说数据库分表带来的数据批量插入,这时候会遇到个问题就是插入效率低的问题,例如博主前段时间在导入几千万条万条数据时,过程耗时***秒,具体多少?反正没有继续等,直接崩溃。于是乎对代码做了点优化,最后做到了10s内!!!开始表演,mock下过程原始写法,用的正常mybatisplus插入:public void insertMore() { long beginTime = System.currentTimeMillis();.原创 2022-03-25 15:20:16 · 6207 阅读 · 4 评论 -
ThreadLocal你搞懂了嘛?InternalThreadLocal ,FastThreadLocal如何做到提高性能
一篇文章让你搞懂ThreadLocal,InternalThreadLocal,FastThreadLocal这里写目录标题ThreadLocal一. 能干啥用?二. 使用非常广泛。举三个框架源码中的例子,大家品一品。1. Spring 的事务2. mybatis 的分页插件,PageHelper。3. Dubbo 的 RpcContext。三. 原理?四. 内存泄漏的问题?InternalThreadLocal一. 能干啥用的?二. 强在哪里?FastThreadLocal一. 能干啥用?二. 为什么快原创 2021-07-05 11:20:01 · 630 阅读 · 0 评论 -
手写FutureTask实现
FutureTaskFutureTask是Future的实现,用来异步任务的获取结果,可以启动和取消异步任务,查询异步任务是否计算结束以及获取最终的异步任务的结果。通过get()方法来获取异步任务的结果,但是会阻塞当前线程直至异步任务执行结束。一旦任务执行结束,任务不能重新启动或取消,除非调用runAndReset()方法代码示例:public class ThreadTest_Demo { static ExecutorService executors = Executors.newSch原创 2021-08-04 14:15:42 · 147 阅读 · 0 评论