熟悉Java多线程编程的同学都知道,当我们线程创建过多时,容易引发内存溢出,因此我们就有必要使用线程池的技术了。最近看了一些相关文章,并亲自研究了一下源码,发现有些文章还是有...
熟悉Java多线程编程的同学都知道,当我们线程创建过多时,容易引发内存溢出,因此我们就有必要使用线程池的技术了。最近看了一些相关文章,并亲自研究了一下源码,发现有些文章还是有...
参考链接:https://zhuanlan.zhihu.com/p/63179839https://zhuanlan.zhihu.com/p/64138532https://...
在【Java并发学习一】如何实现一个线程池上进行扩展,我们想一下如何实现一个定时任务线程池呢? 所谓 “定时任务线程池” 就是指放入线程池的任务,可以按照指定的等待周期循环执...
简单整理下ThreadLocal的原理,以及它需要注意的内存泄漏。 ThreadLocal原理 ThreadLocal不多介绍,可看作线程内的局部变量(这个比喻很贴切)。我们...
前言 和设计模式一样,打算花三个月的时间,结合《Java并发编程实战》一书,来总结下并发方面的知识。第一章从线程池的原理开始总结,希望自己能坚持下来,加油! 1. 如何实现一...
1. IOC(Inversion of Control)与DI(Dependency Injection) “控制反转”和“依赖注入”其实是同一个概念:改变由调用者创建被调用...
细碎点集锦 程序是对象的集合,它们通过发送消息来告知彼此所要做的。要想请求一个对象,就必须对该对象发送一条消息。更具体的说,可以把消息想象为对某个特定对象的方法的调用 文档注...
这篇文章主要讨论Stack Overflow上面公选投票最多的一个问题:如何把下面的数组转换成为一个ArrayList? 1. 点赞最多的答案 最受认可的答案如下: 首先,...
碰到过得一个面试题,哈哈
Simple Java—Collections(一)Java高效计数器Translate from Efficient Counter in Java Java中的高效计数器 你可能经常需要统计一段文本或数据库中某些东西(例如单词)的出现频率。...
Translate from Efficient Counter in Java Java中的高效计数器 你可能经常需要统计一段文本或数据库中某些东西(例如单词)的出现频率。...
注:本文内容会有部分涉及上节的硬件知识:【Java并发学习二】多线程编程的硬件基础知识总结 1. 内存屏障 上一节讲过,为了解决写缓冲器和无效化队列带来的有序性和可见性问题,...
前言 假设现在我们要向mysql插入500万条数据,如何实现高效快速的插入进去?暂时不考虑数据的获取、网络I/O、以及是否跨机操作,本文将在本地进行数据的插入,单纯从mysq...
流程图的定义和分类 流程——顾名思义:水流的路程;事物进行中的次序或顺序的布置和安排。流程是自然而然就存在的,它可以不规范,可以不固定,可以充满问题产品经理画流程图主要作用:...