Tag

IO

0 views collected around this technical thread.

JD Tech Talk
JD Tech Talk
Jan 6, 2025 · Fundamentals

Understanding IO Models: Blocking, Non‑Blocking, Multiplexing, Signal‑Driven and Asynchronous IO

This article explains the fundamentals of input/output (IO) in operating systems, covering the basic IO concept, the role of the OS, the two‑phase IO call process, and detailed descriptions of blocking, non‑blocking, multiplexed (select, poll, epoll), signal‑driven and asynchronous IO models with example code.

IOMultiplexingNon‑Blocking IO
0 likes · 13 min read
Understanding IO Models: Blocking, Non‑Blocking, Multiplexing, Signal‑Driven and Asynchronous IO
macrozheng
macrozheng
Oct 10, 2024 · Fundamentals

How Zero‑Copy Boosts Data Transfer: IO Mechanisms, mmap, sendfile & splice Explained

This article explains the concept of zero‑copy, compares traditional I/O copying with mmap, sendfile, DMA scatter/gather and splice techniques, and shows how Java NIO leverages mmap and sendfile to achieve high‑performance data transfer while minimizing CPU involvement.

IOJava NIOLinux
0 likes · 15 min read
How Zero‑Copy Boosts Data Transfer: IO Mechanisms, mmap, sendfile & splice Explained
macrozheng
macrozheng
Sep 24, 2024 · Backend Development

Master SpringBoot’s Built‑in Utility Classes: Assertions, Collections, IO, and More

This article provides a concise guide to SpringBoot’s built‑in utility classes—including Assert, ObjectUtils, StringUtils, CollectionUtils, FileCopyUtils, ResourceUtils, StreamUtils, ReflectionUtils, and AOP helpers—explaining their purpose, key methods, and offering ready‑to‑use code examples to boost development efficiency.

AssertionsIOJava
0 likes · 14 min read
Master SpringBoot’s Built‑in Utility Classes: Assertions, Collections, IO, and More
Deepin Linux
Deepin Linux
May 24, 2024 · Fundamentals

Understanding Zero‑Copy Technology: Concepts, Mechanisms, and Linux Implementations

Zero‑copy is an optimization technique that eliminates unnecessary memory copies between kernel and user space by leveraging DMA, memory‑mapping and specialized system calls, thereby reducing CPU load, latency and improving throughput for high‑performance networking, storage and multimedia workloads.

DMAIOLinux
0 likes · 18 min read
Understanding Zero‑Copy Technology: Concepts, Mechanisms, and Linux Implementations
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
May 17, 2024 · Backend Development

Understanding and Optimizing Java Thread Pools: Creation, Configuration, and Monitoring

This article explains why threads are essential for performance, how to create and configure Java thread pools using the Executors utility, distinguishes CPU, IO, and scheduled pool types, and demonstrates monitoring techniques for latency and deadlock detection with practical code examples.

CPUExecutorServiceIO
0 likes · 25 min read
Understanding and Optimizing Java Thread Pools: Creation, Configuration, and Monitoring
Selected Java Interview Questions
Selected Java Interview Questions
Oct 12, 2023 · Backend Development

Spring Framework Utility Classes Overview: Assertions, ObjectUtils, StringUtils, CollectionUtils, FileCopyUtils, ResourceUtils, StreamUtils, ReflectionUtils, AopUtils

This article provides a comprehensive overview of Spring Framework utility classes—including Assert, ObjectUtils, StringUtils, CollectionUtils, FileCopyUtils, ResourceUtils, StreamUtils, ReflectionUtils, and AopUtils—explaining their purpose, key methods, and usage examples with code snippets for backend developers.

AssertionsBackendIO
0 likes · 14 min read
Spring Framework Utility Classes Overview: Assertions, ObjectUtils, StringUtils, CollectionUtils, FileCopyUtils, ResourceUtils, StreamUtils, ReflectionUtils, AopUtils
Java Architect Essentials
Java Architect Essentials
Sep 1, 2023 · Backend Development

Spring Boot Built‑in Utility Classes Overview

This article introduces the most commonly used Spring Boot utility classes—including assertions, object and collection helpers, file/IO utilities, reflection, and AOP support—providing code examples and usage guidelines to help Java backend developers write cleaner, more efficient code.

AssertionsIOJava
0 likes · 19 min read
Spring Boot Built‑in Utility Classes Overview
Selected Java Interview Questions
Selected Java Interview Questions
May 29, 2023 · Backend Development

Understanding Blocking, Non‑Blocking, and I/O Multiplexing Models in Unix Network Programming

This article introduces the basic concepts of I/O and explains three Unix network programming models—blocking I/O, non‑blocking I/O, and I/O multiplexing—detailing their workflows, advantages, disadvantages, and practical analogies for better comprehension.

IOIO MultiplexingNon‑Blocking IO
0 likes · 10 min read
Understanding Blocking, Non‑Blocking, and I/O Multiplexing Models in Unix Network Programming
Efficient Ops
Efficient Ops
Mar 1, 2023 · Backend Development

Understanding Synchronous vs Asynchronous and Blocking vs Non‑Blocking I/O in Java

This article uses a playful dialogue and water‑kettle analogies to explain the differences between synchronous and asynchronous I/O, blocking and non‑blocking operations, and then details Java's three I/O models—BIO, NIO, and AIO—so readers can choose the right approach for their web projects.

BackendIOJava
0 likes · 5 min read
Understanding Synchronous vs Asynchronous and Blocking vs Non‑Blocking I/O in Java
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Nov 18, 2022 · Fundamentals

Understanding Java IO Streams: BIO, Byte and Character Streams, and Practical Read/Write Examples

This article introduces Java's three generations of IO frameworks, explains the differences between blocking BIO, NIO, and NIO2, details byte and character streams, and provides complete example programs for writing to and reading from text files using try‑with‑resources and stream conversions.

BIOIOJava
0 likes · 14 min read
Understanding Java IO Streams: BIO, Byte and Character Streams, and Practical Read/Write Examples
Architects' Tech Alliance
Architects' Tech Alliance
Jul 14, 2022 · Fundamentals

Understanding Synchronous vs Asynchronous, Blocking vs Non-Blocking, and Linux I/O Models

This article explains the concepts of synchronous and asynchronous execution, blocking and non‑blocking operations, user and kernel space, process switching, file descriptors, cache I/O, and compares various Linux I/O models such as blocking, non‑blocking, multiplexing, signal‑driven and asynchronous I/O, including the differences among select, poll and epoll.

IOLinuxasynchronous
0 likes · 14 min read
Understanding Synchronous vs Asynchronous, Blocking vs Non-Blocking, and Linux I/O Models
Refining Core Development Skills
Refining Core Development Skills
Jan 6, 2022 · Fundamentals

The Evolution and Principles of Coroutines: From COBOL to Modern Languages

This article traces the historical origins of coroutines from early COBOL compiler challenges, explains their cooperative execution model, compares them with thread scheduling, and reviews how modern languages like Python, C++ and Go implement coroutine support to improve IO‑bound performance.

C++CoroutineGo
0 likes · 16 min read
The Evolution and Principles of Coroutines: From COBOL to Modern Languages
Coolpad Technology Team
Coolpad Technology Team
Nov 18, 2021 · Mobile Development

Optimizing Cold Startup Performance of Android Apps: A Case Study with Alipay

This article analyzes why Alipay’s cold start on our device is slower than on competing phones and presents a series of optimizations—including CPU boosting, Dex2oat strategy adjustments, GC frequency reduction, and I/O improvements—that collectively close the performance gap.

AndroidCPUCold Start
0 likes · 11 min read
Optimizing Cold Startup Performance of Android Apps: A Case Study with Alipay
Top Architect
Top Architect
Aug 31, 2021 · Backend Development

Understanding Different I/O Models: Blocking, Non‑Blocking, Multiplexing, and Asynchronous

This article explains the four main I/O models—synchronous blocking, synchronous non‑blocking, I/O multiplexing (Reactor), and asynchronous I/O (Proactor)—illustrates their characteristics with examples, and encourages readers to share the content after gaining a clearer understanding of these fundamental backend concepts.

BackendIOMultiplexing
0 likes · 3 min read
Understanding Different I/O Models: Blocking, Non‑Blocking, Multiplexing, and Asynchronous
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Aug 19, 2021 · Databases

Understanding Redis 6.0 Multithreading Model and Configuration

The article explains Redis 6.0's new features—especially the multithreaded network I/O model—why earlier versions were single‑threaded, how the IO threads cooperate with the main thread, configuration steps, thread‑count recommendations, and the model's limitations and performance implications.

DatabaseIORedis
0 likes · 9 min read
Understanding Redis 6.0 Multithreading Model and Configuration
Selected Java Interview Questions
Selected Java Interview Questions
Jul 10, 2021 · Backend Development

Differences Between Java NIO and IO, Channels, Buffers, and Their Comparison with Netty

This article explains the core differences between Java NIO and traditional IO, introduces the concepts of channels and buffers, describes buffer state management, provides a complete NIO selector code example, and compares the NIO workflow with Netty's model.

BackendBuffersChannels
0 likes · 10 min read
Differences Between Java NIO and IO, Channels, Buffers, and Their Comparison with Netty
Code Ape Tech Column
Code Ape Tech Column
Mar 2, 2021 · Backend Development

A Quick Introduction to Java NIO with Practical Examples

This article explains Java NIO fundamentals—including Channels, Buffers, and Selectors—compares them with traditional IO, and provides multiple runnable code examples such as FileChannel, SocketChannel, Selector loops, memory‑mapped files, scatter/gather, transferTo/From, Pipe and DatagramChannel to illustrate non‑blocking and high‑performance I/O.

BufferIOJava
0 likes · 31 min read
A Quick Introduction to Java NIO with Practical Examples
vivo Internet Technology
vivo Internet Technology
Feb 25, 2021 · Mobile Development

Understanding File Descriptors and FD Leaks in Android

Android inherits Linux file descriptors, which are indexed by non‑negative integers and limited per process, and this article explains their kernel structures, common leak sources such as HandlerThread eventfd, unclosed streams, and SQLite cursor windows, plus practical commands and monitoring techniques to detect and fix FD leaks.

AndroidFD LeakFileDescriptor
0 likes · 20 min read
Understanding File Descriptors and FD Leaks in Android
Selected Java Interview Questions
Selected Java Interview Questions
Nov 20, 2020 · Fundamentals

Comprehensive Guide to Java IO Streams: Concepts, Types, and Practical Examples

This article explains the fundamentals of Java IO, covering the definition of streams, their characteristics, classification by direction, data unit and function, the role of node and processing streams, buffering for performance, serialization, and includes extensive code examples and efficiency comparisons.

Buffered StreamsFile I/OIO
0 likes · 23 min read
Comprehensive Guide to Java IO Streams: Concepts, Types, and Practical Examples