Asynchronous I/O (AIO)
Asynchronous I/O (AIO) is a modern high-performance asynchronous non-blocking I/O technology that Linux implements. Think about it: non-blocking and asynchronous implies that an application thread can issue a read (for file or network data); the usermode API returns immediately; the I/O is queued up within the kernel; the application thread can continue working on CPU-bound stuff; once the I/O request completes, the kernel notifies the thread that the read is ready; the thread then actually performs the read. This is high-performance—the app does not remain blocked on I/O and can instead perform useful work while the I/O request is processed; not only that, it is asynchronously notified when the I/O work is done. (On ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access