liveBook · Manning

I/O-bound work

I/O-bound work is work whose progress or completion is primarily limited by input and output operations or waiting for external resources rather than computation.

How 5 Manning books explain it

Python Concurrency with asyncio

Blocking I/O work is work whose progress can wait for input or output operations that do not complete immediately.

How it is used
Guides concurrency choices for applications dominated by network, storage, database, or other input/output waiting.
How deep it goes
Explains limiting factors, mixed workloads, asynchronous pausing, and event-loop scheduling without detailing device internals.
Examples
Uses web requests, file reads and writes, database queries, header formatting, and concurrent product lookups as concrete examples.
What you can do after
Apply it with asyncio, non-blocking sockets, connection pools, or thread pools to run independent blocking operations concurrently.

Read how Python Concurrency with asyncio explains I/O-bound work →

Rust Servers, Services, and Apps

An I/O-bound program is a program whose progress rate is primarily limited by the speed of input and output operations.

How it is used
Guides choosing asynchronous execution for file, database, network, and web-server workloads dominated by external waits.
How deep it goes
Defines the bottleneck, contrasts CPU-bound work, and demonstrates runtime scheduling without fully developing asynchronous internals.
Examples
Uses file reads, database access, TCP/HTTP requests, timers, and two Tokio-spawned file futures as examples.
What you can do after
Evaluate whether asynchronous task execution fits workloads whose progress depends on file, database, network, or timer operations.

Read how Rust Servers, Services, and Apps explains I/O-bound work →

Grokking Concurrency

An I/O-bound operation is an operation whose completion primarily depends on input/output activity or waiting for external hardware or services.

How it is used
Distinguishes device-waiting bottlenecks from computation bottlenecks when choosing how to improve program performance.
How deep it goes
Defines the bottleneck, illustrates waiting with workloads, and follows blocked tasks through scheduling without detailing device internals.
Examples
Uses file searching, network-to-disk transfer, graphical input, and a one-core arcade game to contrast waiting with computation.
What you can do after
Diagnose/debug with it by identifying whether I/O waiting, rather than processor speed, limits a workload.

Read how Grokking Concurrency explains I/O-bound work →

100 Go Mistakes and How to Avoid Them

An I/O-bound workload is a workload whose execution time is primarily limited by input and output operations or an external system.

How it is used
Classifies workloads to guide concurrency design and worker-pool sizing.
How deep it goes
Defines I/O-bound work, contrasts it with CPU-bound work, and works through worker-pool consequences without reducing sizing to one formula.
Examples
Uses REST calls, database queries, repeated io.Reader reads, and a ten-goroutine worker pool.
What you can do after
Diagnose workload type and choose goroutine counts using external-system constraints rather than CPU capacity alone.

Read how 100 Go Mistakes and How to Avoid Them explains I/O-bound work →

Starting Data Analytics with Generative AI and Python

An I/O-bound task is a computation whose execution time is primarily limited by input or output operations rather than processor computation.

How it is used
Distinguishes whether performance is limited by external input/output or processor computation during scaling and optimization.
How deep it goes
Defines the bottleneck, gives examples, recommends measurements, and stops short of detailed asynchronous-I/O implementation.
Examples
Uses large-file reads, internet downloads, user input, and a Python monitor sampling CPU, disk I/O, and memory.
What you can do after
Diagnose/debug with CPU, disk, network, and memory measurements, then select storage, I/O, or asynchronous-I/O improvements.

Read how Starting Data Analytics with Generative AI and Python explains I/O-bound work →

Related concepts

These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.