割り込みタスクをネストさせない

投稿日:

割り込みは避けるのは難しい

タスク管理の一番の悩みどころは、「割り込みタスク」です。 他の人から急用を頼まれることもあれば、 今やっている作業とは別のことをやってしまう、 いわゆる「脱線」も、割り込みの一つです。

ここでは、その割り込みタスクを避ける方法については書きません。 ただ、割り込みタスクがしょうがないとしても、 割り込みのネスト、別の言い方をすると、 「割り込みの割り込み」はなんとでも避けるべきです。

脳が疲労する

なぜ避けるべきかというと、ものすごく疲労するからです。 作業中に割り込まれると、割り込まれる前の状態を脳が覚えようとします。 割り込みに割り込みが入ると、覚える状態が2つに増えます。 割り込みが増えるほど、覚える状態が増え、脳が疲労します。

ネストさせないための対策

以下の2つがあります。

  1. 「割り込みの割り込み」をメモだけにして、「元の割り込み」を完成させる
  2. 「元の割り込み」を含め、やることを洗い出し、整理する。

最初の方法は、「割り込みの割り込み」を一旦棚上げにし、 「元の割り込み」を終わらせることを優先させます。 ただ、忘れてしまっても意味がないため、「割り込みの割り込み」は、 メモしておきます。

しかし、「割り込みの割り込み」がいくつも出てきて、 頭が混乱してくることもあります。 そういうときは、まずやるべきことを洗い出し、 割り込みが入らないように整理します。

どちらを選ぶかは、脳の疲労状態で決めます。 作業に支障がなければメモするだけ、 混乱しているなら整理します。

参考文献

タスク管理の本ではないですが、「テスト駆動開発」にも記載されています。

No.1097あたり

この修正をいま行うべきだろうか。それとも待つべきだろうか。 教科書的な答えは「いま行っている作業を止めないために、修正は待つべき」 となる。ただ、個人的な回答をするなら「ちょっとした割り込みを楽しもう。 ただし、ちょっとしたものに限る」と言いたい。 そこに「割り込みにさらに割り込むことはしない」というルールも加えておこう (Jim Coplienがこのルールを教えてくれた)。

辞書