Concurrency - Livelock

> (Data|State) Management and Processing > (Concurrency|Parallel|Asynchronous) programming

1 - About

Livelock is a forms of thread contention.

A thread often acts in response to the action of another thread. If the other thread's action is also a response to the action of another thread, then livelock may result.

Livelocked threads are:

  • unable to make further progress (As with deadlock)
  • are not blocked — they are simply too busy responding to each other to resume work.

3 - Corridor Example

This is comparable to two people attempting to pass each other in a corridor:

  • Alphonse moves to his left to let Gaston pass, while Gaston moves to his right to let Alphonse pass.
  • Seeing that they are still blocking each other, Alphone moves to his right, while Gaston moves to his left.

They're still blocking each other, so…

4 - Documentation / Reference

data/concurrency/livelock.txt · Last modified: 2017/10/27 15:54 by gerardnico