线程池
weixin_46785731
这个作者很懒,什么都没留下…
展开
-
从源码看JDK提供的线程池(ThreadPoolExecutor),打开你脑袋壳
一丶什么是线程池(1)博主在听到线程池三个字的时候第一个想法就是数据库连接池,回忆一下,我们在学JavaWeb的时候怎么理解数据库连接池的,数据库创建连接和关闭连接是一个比较耗费资源的事情,对于那些数量多且时间短暂的任务,会导致频繁获取和释放连接,这样使得处理事务的效率大大降低,多以我们创建一个连接池,里面放了指定数目的连接,当应用需要数据库连接的时候去里面获取,使用完毕后再放到连接池里,这样就避免了重复的获取连接和释放连接,至于要获取什么样的连接池我们可以根据应用的特征,设置参数来决定。(2)线程池和原创 2020-08-18 14:02:01 · 90 阅读 · 0 评论 -
死磕Java虚拟机,带你走进性能调优理论
一. 如何找到一个垃圾?1) 引用计数算法:给对象添加一个引用计数器,有一次引用,计数器值就加1;当引用失效时,计数器值就减1。很多流程的编程语言例如Python都使用这种方法管理内存,但是主流的Java虚拟机没有选用它,主要原因是它很难解决对象之间相互循环引用的问题。2) 根可达性分析算法:因为引用计数算法无法解决对象之间相互循环引用的问题,继而引出了这个算法。思想是以GC Roots作为起始点开始向下搜索,所走过的路径成为引用链,当一个对象到GC Roots没有任何引用链时,则这个对象是不可用的原创 2020-06-19 20:17:15 · 158 阅读 · 0 评论