XとYという、2つのプロセスがある。

Xは、Aというモジュールを占有し、
Aに対して排他ロックをかけ、
Aの処理が終わってから
Bにアクセスしようとする。

この時同時に、
Yというプロセスが、
Bにアクセスし、Bに排他ロックをかけ、
Bの処理が終わってからAにアクセス
しようとする。

するとXはAを占有し、YはBを占有していて、
お互いに処理空くまで待っているが永遠に
ロックは解除されない。これがデッドロック問題である。