← Software Engineering & Cloud Studio
Concept Explainer · Software Engineering

Synchronous vs. Asynchronous Programming

Why "waiting" doesn't have to mean "blocked" — and how a single thread can stay busy while a slow network call is still in flight.

Every time code calls something slow — a network request, a file read, a database query — it has a choice to make about what happens while that call is in progress. Synchronous code blocks: it stops and does nothing else until the call returns. Asynchronouscode starts the call, then immediately moves on to other work, dealing with the result later when it actually arrives. That one decision — block, or don't — is the entire difference, and it's why a single thread running Node.js can juggle thousands of connections that would otherwise sit stacked up behind each other.