函数式接口 (`Supplier`, `Function`, `BiConsumer`, `Consumer`)

笔记  Java 

https://www.cnblogs.com/dgwblog/p/11739500.htmlhttps://juejin.cn/post/68449038921661481101. Supplier<T> - 数据的供给者 🎁接口定义:@FunctionalInterface pub

策略模式


介绍策略模式是一种行为型设计模式。在策略模式定义了一系列算法或策略,并将每个算法封装在独立的类中,使得它们可以互相替换。通过使用策略模式,可以在运行时根据需要选择不同的算法,而不需要修改客户端代码。在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略

ABA问题

笔记  JUC  Java 

介绍ABA问题是并发编程中,在使用无锁(lock-free)算法,特别是基于 比较并交换(Compare-And-Swap, CAS) 操作时可能出现的一种逻辑错误。它之所以被称为"ABA"问题,是因为一个变量的值从 A 变成了 B,然后又变回了 A。对于一个只检查当前值是否等于

NIO基础- Selector

笔记  Java  Netty 

Selector 的核心作用多路复用允许一个线程管理多个 Channel,避免为每个连接分配独立线程,降低资源消耗。事件驱动监控 Channel 的特定事件(如可读、可写),仅在事件就绪时触发处理逻辑。非阻塞 I/O配合非阻塞模式(Non-blocking Mode)的 Channel 使用,避免线

NIO基础-Channel & Buffer

笔记  Java  Netty 

NIO基础NIO 非阻塞IO三大组件之Channel & Bufferchannel类似于stream,是读写数据的双向通道,可以从channel将数据读入buffer,也可以把buffer的数据写入channel,而之前的stream要么是输入,要么是输出,channel比stream更为

基于CAS实现的工具类

笔记  JUC  Java 

原子整数AtomicBooleanAtomicIntegerAtomicLongAtomicInteger 常用方法介绍 🚀🔢AtomicInteger 是 Java 中提供的一种线程安全的整型操作类,属于 java.util.concurrent.atomic 包。相比传统的 int 类型,A

AtomicBoolean 的常用方法

笔记  JUC  Java 

了解 AtomicBoolean 的常用方法 🧠🔒AtomicBoolean 是 Java 中提供的一种线程安全的布尔类型操作类,属于 java.util.concurrent.atomic 包。它采用 CAS(Compare-And-Swap) 无锁机制,确保在多线程环境下对布尔值的原子操作。

AtomicInteger 常用方法介绍

笔记  JUC  Java 

AtomicInteger 常用方法介绍 🚀🔢AtomicInteger 是 Java 中提供的一种线程安全的整型操作类,属于 java.util.concurrent.atomic 包。相比传统的 int 类型,AtomicInteger 使用 CAS(Compare-And-Swap) 无锁

CAS

笔记  JUC  Java 

简介CAS是一种用于实现并发编程中线程安全的无锁机制。在 Java 的 java.util.concurrent.atomic 包中得到了完美应用,例如 AtomicInteger。理念CAS的核心思想是进行乐观锁操作,在多个线程修改共享变量的时候,它不依赖于传统的锁,而是依靠硬件底层原语直接完成对

保护共享资源代码实现

笔记  JUC  Java 

// 包声明 - 将相关的类组织在一起package cn.meowrain;// 引入 AtomicInteger 类,用于支持线程安全的原子操作import java.util.concurrent.atomic.AtomicInteger;// 主类,用于演示不同账户实现的功能public c