deadlock
名詞
[専門用語] 2つ以上のプロセスが、それぞれが他のプロセスが何かをするのを待っているために先に進めない状況。よくある例は、サーバーと通信するプログラムである。そのプログラムは、サーバーにさらに何かを送る前にサーバーからの出力を待っているのに、サーバーも同様に、何かを出力する前に制御プログラムからのさらなる入力を待っている、ということがある。(この特定の種類のdeadlockは、starvation deadlock(飢餓デッドロック)と呼ばれることがあると報告されているが、starvationという用語は、プログラムが十分に高い優先度を得られないために決して実行されない状況に対して使うのがより適切である。もう一つのよくある種類はconstipation(便秘)で、各プロセスが相手にものを送ろうとしているが、誰も何も読んでいないために全バッファが満杯になっている状態である。)deadly embraceを参照。
人間同士のdeadlockのような相互作用についても使われる。たとえば、2人が狭い廊下で出会い、それぞれが相手を通そうと丁寧に脇によけようとするが、いつも同時に同じ方向に動いてしまうので、左右に揺れるばかりで一向に進まない、というような場合である。