Wesley13 Wesley13
3年前
java四种线程池类型以及可选择的阻塞队列
之前笔记有记录java线程池的拒绝策略,回顾一下线程池的处理任务的优先级:先考虑corePoolSize、任务队列(缓冲队列)workQueue、最大线程maximumPoolSize,如果三者都满了,使用handler处理被拒绝的任务。即:如果运行的线程少于corePoolSize,则Executor始终首选添加新的线程,而不进行排队
Stella981 Stella981
3年前
Dubbo 线程池源码解析
本文首发于个人微信公众号《andyqian》,期待你的关注!前言之前文章《Java线程池ThreadPoolExecutor(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzI2NDU3OTg5Nw%3
可莉 可莉
3年前
2020年首发70道阿里巴巴高级Java开发面试题(带详细答案)
2020年首发70道阿里巴巴高级Java开发面试题(带详细答案)!在这里插入图片描述(https://imgblog.csdnimg.cn/2020102520221477.pngpic_center)面试题1、java事件机制包括哪三个部分?分别介绍。2、为什么要使用线程池?3、线程池有什么作用?4、说说几种常见
Stella981 Stella981
3年前
2020年首发70道阿里巴巴高级Java开发面试题(带详细答案)
2020年首发70道阿里巴巴高级Java开发面试题(带详细答案)!在这里插入图片描述(https://imgblog.csdnimg.cn/2020102520221477.pngpic_center)面试题1、java事件机制包括哪三个部分?分别介绍。2、为什么要使用线程池?3、线程池有什么作用?4、说说几种常见
Stella981 Stella981
3年前
Executor框架
任务是一组逻辑工作单元,而线程则是使任务异步执行的机制。线程池简化了线程的管理工作,并且java.util.concurrent提供了一种灵活的线程池实现作为Executor框架的一部分。在Java类库中,任务执行的主要抽象不是Thread,而是Executor,如下所示:publicinterfaceExecutor{void
Wesley13 Wesley13
3年前
JDBC连接池 JDBCTemplate
1.数据库连接池2.SpringJDBC:JDBCTemplate数据库连接池1.概念:其实就是一个容器(集合),存放数据库连接的容器。当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对
Easter79 Easter79
3年前
ThreadLocal的内存泄露的原因分析以及如何避免
前言在分析ThreadLocal导致的内存泄露前,需要普及了解一下内存泄露、强引用与弱引用以及GC回收机制,这样才能更好的分析为什么ThreadLocal会导致内存泄露呢?更重要的是知道该如何避免这样情况发生,增强系统的健壮性。内存泄露内存泄露为程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果
NUMA架构介绍及优缺点分析
NUMA(NonUniformMemoryAccess,非统一内存访问)架构是一种针对多处理器系统的内存组织方式。在这种架构中,处理器被分配到不同的节点,每个节点拥有自己的本地内存。处理器可以访问本地内存和其他节点的内存,但访问本地内存的速度要快于访问其他节点的内存。
java线程池原理浅析
问题与解决:问题:查询大数据量的时候,例如一次返回50w数据量的包,循环去查询发现读取会超时。解决方案:经过思考采用多线程去分页查询。使用线程池创建多个线程去查询分页后的数据最后汇总一下,解决了一次查询大量数据返回超时的问题。一次查询现状:多线程分页查询改
并发编程-ExecutorCompletionService解析
1、简单介绍我们在并发编程中,目前大部分做法都是将任务添加到线程池中,并拿到Future对象,将其添加到集合中,等所有任务都添加到线程池后,在通过遍历Future集合,调用future.get()来获取每个任务的结果,这样可以使得先添加到线程池的任务先等待