俺は>>641のほうが良いと思うぞ。
単純で読みやすい。
whieループの中の「〜タスク」は別関数に切り出して欲しいが。

こんな簡単な問題をなんで変なマクロでくくって、ややこしくするのかが理解できん。
>>510タスクシステムが理解できないのではなく、
簡単な問題をわざわざ複雑に解く理由が分からんと言っている。

事実、>>641のコード量は>>510の半分程度になってるだろ。