Understanding Java NIO Internals: From API to Kernel Implementation

Java NIO (New I/O, introduced in JDK 1.4) represents a revolutionary upgrade over traditional BIO, fundamentally addressing BIO's high-concurrency bottleneck of "one connection per thread." This analysis dissects Java NIO's underlying logic from four dimensions: core components, low-level principles, mapping to operating system I/O mo ...

Posted on Mon, 10 Aug 2026 16:37:55 +0000 by silasslack

Java NIO Channel: A Comprehensive Guide to I/O Channels

Channel Overview A Channel represents a connection between two I/O endpoints where data flows. These endpoints can be disk drives, memory, network devices, or other I/O sources. Channels in Java NIO bridge the gap between buffers and the underlying operating system I/O facilities. Channel Class Hierarchy The Java NIO Channel architecture provid ...

Posted on Sun, 19 Jul 2026 16:13:31 +0000 by Myke

SCSS selector nesting and parent reference explained

SCSS extends CSS with features like nesting and parent selector referencing to reduce repetition and improve maintainability. 1. CSS selector recap Standard CSS selectors include: Universal: * Type: div, p, etc. Class: .classname ID: #id Attribute selectors: [attr], [attr=val], [attr~=val], [attr|=val], [attr^=val], [attr$=val], [attr*=val] Se ...

Posted on Tue, 23 Jun 2026 16:07:06 +0000 by squizz

Using Selectors in a Multithreaded Environment and Understanding IO Models

1. Using Selector in a Multithreaded Environment 1-1 Why Multi-threading Optimization? Although a single thread with a selector can manage multiple channels' events, it has the following drawbacks: Drawback 1: Multi-core CPUs are wasted. Drawback 2: A time-consuming event can delay the processing of other events. Single-threaded event processi ...

Posted on Sun, 31 May 2026 17:58:08 +0000 by ReVeR