摘要: Buffer模式切换遗漏 ByteBuffer buffer = ByteBuffer.allocate(10); buffer.put("Hello".getBytes()); // 错误:未调用flip()直接读取,导致position=5,读取不到数据 buffer.get(); 2. Sel 阅读全文
posted @ 2025-03-17 23:29 头发少的文不识 阅读(0) 评论(0) 推荐(0) 编辑
摘要: Selector与网络编程实战 NIO服务端实现步骤 // 1. 创建Selector Selector selector = Selector.open(); // 2. 创建ServerSocketChannel并绑定端口 ServerSocketChannel ssc = ServerSock 阅读全文
posted @ 2025-03-17 23:28 头发少的文不识 阅读(0) 评论(0) 推荐(0) 编辑
摘要: Buffer与Channel操作 Buffer读写流程 // 分配Buffer(容量为10) ByteBuffer buffer = ByteBuffer.allocate(10); // 写入数据 buffer.put((byte) 'J'); buffer.put((byte) 'A'); bu 阅读全文
posted @ 2025-03-17 23:28 头发少的文不识 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 线程池调优策略 核心参数配置 ThreadPoolExecutor executor = new ThreadPoolExecutor( corePoolSize, // 核心线程数(常驻) maximumPoolSize, // 最大线程数(临时线程) keepAliveTime, // 空闲线程 阅读全文
posted @ 2025-03-15 23:50 头发少的文不识 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 锁优化与StampedLock StampedLock特性 三种模式: 写锁(独占):writeLock() 悲观读锁(共享):readLock() 乐观读(无锁):tryOptimisticRead() 锁转换:支持读锁升级为写锁(可能死锁,需谨慎) 代码示例 class Point { priv 阅读全文
posted @ 2025-03-15 23:49 头发少的文不识 阅读(2) 评论(0) 推荐(0) 编辑
摘要: JVM垃圾回收机制(GC) 内存分区与GC类型 堆内存分代: 新生代(Young Generation):Eden区、Survivor区(S0/S1) 老年代(Old Generation):长期存活对象 元空间(Metaspace):类元数据(替代永久代) 常见GC算法: GC类型 特点 适用场景 阅读全文
posted @ 2025-03-15 23:48 头发少的文不识 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 并发集合进阶 CopyOnWriteArrayList 适用场景:读多写少(通过复制数组保证线程安全) CopyOnWriteArrayList list = new CopyOnWriteArrayList<>(); list.add("Java"); list.forEach(System.ou 阅读全文
posted @ 2025-03-14 23:58 头发少的文不识 阅读(2) 评论(0) 推荐(0) 编辑
摘要: volatile 关键字与JMM volatile 作用 可见性:确保线程读取变量时从主内存获取最新值 禁止指令重排序:防止编译器和CPU优化导致代码执行顺序异常 使用场景 class SharedResource { private volatile boolean flag = false; / 阅读全文
posted @ 2025-03-14 23:57 头发少的文不识 阅读(2) 评论(0) 推荐(0) 编辑
摘要: CompletableFuture 异步编程 核心特性 链式调用:支持异步任务串联、组合与异常处理 函数式风格:结合Lambda简化回调嵌套 基础使用 // 异步执行任务(默认使用ForkJoinPool) CompletableFuture task1 = CompletableFuture.ru 阅读全文
posted @ 2025-03-14 16:04 头发少的文不识 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 函数式接口(Functional Interface) 定义:仅含一个抽象方法的接口(可添加@FunctionalInterface注解) @FunctionalInterface interface Calculator { int calculate(int a, int b); default 阅读全文
posted @ 2025-03-13 22:13 头发少的文不识 阅读(3) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示