Blocking (computing)

In computing, a process that is blocked is waiting for some event, such as a resource becoming available or the completion of an I/O operation.

Programming languages and scheduling algorithms are designed to minimize the over-all effect of blocking.

A process that blocks may prevent local work-tasks from progressing.

[2] However, such work-tasks may instead have been assigned to independent processes, where halting one has little to no effect on the others, since scheduling will continue.

[clarification needed] Deadlock means that processes pathologically wait for each other in a circle.