-
LRU 算法 Java 实现
定义 Least Recently Used 最近最少使用,是一种常用的页面置换算法。 选择最近最久未使用的数据予以淘汰。 LinkedHashMap publ
-
Tomcat acceptCount 和 maxConnections 参数解析
版本 Tomcat9 参数说明 acceptCount:全连接队列容量,等同于backlog参数,与Linux中的系统参数somaxconn取较小值,Windo
-
Java JDBC 获取数据库链接
方法一 Class<?> clazz = Class.forName("com.mysql.jdbc.Driver"); // Driver driver = (Driver) clazz.newI
-
Java SPI 机制
示例代码 接口 package com.example.service; public interface HelloService { void
2022-04-09, Views: 2093 , Topics: Java
-
Java module-info.java 关键字解释
示例 module com.example.demo { requires javafx.controls; requires javafx.f
2022-01-10, Views: 3694 , Topics: Java
-
Java Log4j2 高危漏洞复现及解决办法
影响范围 影响< 2.15.0的所有2.x版本。且JDK版本在Oracle JDK 11.0.1、8u191、7u201、6u211及之前的版本。 Git
-
Java 删除非空文件夹
Files.walkFileTree SimpleFileVisitor相关的回调方法如下: preVisitDirectory:进入文件夹前的回调方法。 vi
2021-12-09, Views: 2994 , Topics: Java
-
Java 多级目录的文件夹拷贝
代码 public class FilesCopyDemo { public static void main(String[] args) thro
2021-12-08, Views: 2249 , Topics: Java
-
Java 遍历文件夹
Files.walkFileTree preVisitDirectory:进入文件夹前的回调方法。 visitFile:遍历到具体文件的回调方法。 postVi
2021-12-07, Views: 2534 , Topics: Java
-
为什么 ArrayList 父类中已经实现了 List 接口,自身也实现了 List 接口
引用 I've asked Josh Bloch, and he informs me that it was a mistake. He used to t
2021-12-03, Views: 2482 , Topics: Java
-
Java 并发编程之线程池大小
说明 关于线程池大小的设置,有很多文章和经验公式,给出的答案不尽相同。 Java并发编程实战 《Java并发编程实战》:第8章 - 线程池的使用。第141页。
-
Java 并发编程之 ThreadPoolExecutor 线程池源码解析
构造函数 注意:只有在阻塞队列满的前提下才会创建非核心线程。 ThreadPoolExecutor executor = new ThreadPoolExecu
-
Java 并发编程之自定义线程池
代码 核心线程 阻塞队列 拒绝策略 未实现线程maxSize功能 public class CustomThreadPool { public s
-
Java 并发编程之 ConcurrentLinkedQueue 非阻塞队列
介绍 ConcurrentLinkedQueue没有LinkedBlockingQueue类似的put和take等阻塞方法,所以是一个非阻塞的队列。 但和Lin
-
Java 并发编程之 LinkedBlockingQueue 阻塞队列
介绍 LinkedBlockingQueue的put和take为阻塞方法。 put:队列满时等待放入。 take:队列空时等待获取。 初始化 初始化链表。头节点
-
Java 并发编程之 ConcurrentSkipListSet
介绍 线程安全的排序集合。 原理 ConcurrentSkipListSet底层是使用ConcurrentSkipListMap实现。 public Concu
-
Java 并发编程之 ConcurrentSkipListMap
介绍 线程安全的排序集合。 跳跃列表 Head nodes Index nodes +-+ right +-+
-
Java 并发编程之 CopyOnWriteArraySet
介绍 线程安全的,适合并发的集合类,对比HashSet。 原理 底层实际就是CopyOnWriteArrayList。 具体可参考前一篇文章:Java 并发编程
-
Java 并发编程之 CopyOnWriteArrayList
介绍 线程安全的,适合并发的集合类,对比ArrayList。 读写分离 写操作是复制一份新的数组,读操作在原数组的快照中进行。 数据一致性 遍历时获取的是原数组
-
Java 并发编程之 ConcurrentHashMap 1.8 源码分析
Forwarding node 扩容时如果某个索引位置的节点迁移完毕,用ForwardingNode作为旧table的头节点。 get spread方法保证获取