高速性と安定性

あるシステムを構築したとき、高速性を求めて、タスク間のインターフェースをイベント駆動にした。
Aというタスクからイベント発行し、Bのタスクでそれを受ける。
Bのタスクはその処理をきっかけとしてCのタスクに動作要求をかける。
3つのタスクが関わるこの処理では、B→Cの要求中にAの処理が動けるので高速化することが可能である。
しかし、B→Cへの要求中に、Aの処理が動き、A→Bへのイベント発行がなされる時、その処理が、一連の動きの中で問題ないことを十分確認しなければならない。
問題ないことが確認できない、また十分に確認できる手段を用意できないのであれば、そのような高速化は行ってはならない。
まずは安定性が最優先で、その上で高速化を図るべきである。