Java 多线程:线程中断、等待与唤醒2026-11-03技术多线程一、Java 线程中断机制 1. 什么是线程中断? Java 使用协作式中断机制,通过 interrupt() 通知目标线程需要停止当前任务,但不会强制终止线程。 每个线程都有自己的中断状态,可以简单理解为: false:没有收到中断请求。 true:收到中断请求。 调用 inte2026-11-03|3|0|0
Java NIO:Reactor 模型与 Netty EventLoop 原理2026-11-03技术nio一、Reactor 模型的基本原理 1. 什么是 Reactor? Reactor 是一种基于事件驱动的设计模式,主要解决高并发网络通信中的事件监听和分发问题。 先回顾传统 BIO 的处理方式。 假设服务器同时有 1000 个客户端连接,传统 BIO 通常采用一个连接对应一个线程的方式: 客户端 A2026-11-03|2|0|0
Java 多线程:线程的创建方式与生命周期2026-11-022026-11-02技术nio一、Java 创建线程的几种方式 Java 中常见的线程创建与执行方式有以下几种:2026-11-02|7|0|0
Java 多线程:进程、线程与并发基础2026-11-02默认分类/技术多线程一、进程与线程 1. 什么是进程? 进程(Process)是操作系统进行资源分配和管理的基本单位。 简单理解:当我们启动一个 Java 程序时,操作系统会为这个程序创建一个进程。 例如,启动 Spring Boot 项目: java -jar application.jar 操作系统会启动一个 Ja2026-11-02|4|0|0
Java NIO:DirectBuffer、内存映射与零拷贝原理2026-11-022026-11-02默认分类/技术nio一、HeapByteBuffer 与 DirectByteBuffer 1. HeapByteBuffer:堆内存缓冲区 之前学习 ByteBuffer 时,主要使用: ByteBuffer buffer = ByteBuffer.allocate(1024); 这种方式创建的是 HeapByteB2026-11-02|7|0|0
Java NIO:FileChannel 文件操作、分散读取与聚集写入2026-11-02技术/默认分类nio一、FileChannel 的工作原理 1. 什么是 FileChannel? FileChannel 是 Java NIO 提供的文件通道,主要用于文件数据的读取、写入和传输。 在 NIO 中,文件数据通常通过 FileChannel 和 ByteBuffer 配合完成传输。 读取文件: 磁盘文件2026-11-02|5|0|0
Java NIO:TCP 服务端与客户端、半包处理及非阻塞写入2026-11-022026-11-02技术/默认分类nio一、NIO TCP 服务端的工作原理 Java NIO 通过 Selector、Channel 和 Buffer 实现非阻塞网络通信。 三个核心组件:2026-11-02|6|0|0
Java NIO:Selector 选择器与 IO 多路复用2026-11-022026-11-02技术nio一、什么是 Selector? Selector(选择器)是 Java NIO 的核心组件之一,主要用于监听多个 Channel 的 IO 就绪事件。 传统 BIO 通常采用一个客户端连接对应一个处理线程的方式。当客户端数量较多时,大量线程可能处于阻塞等待状态,增加内存占用和线程切换成本。 Java2026-11-02|2|0|0
Java NIO:Channel 通道的工作原理与数据读写2026-11-01技术/默认分类java/nio一、Channel 是什么? Channel(通道)是 Java NIO 的核心组件之一,主要负责数据的读取和写入。 在传统 BIO 中,数据主要通过 InputStream 和 OutputStream 进行传输;在 NIO 中,数据通常通过 Channel 和 Buffer 配合完成传输。 三个2026-11-01|8|0|0