現在作っているプログラムで、
割り込みによって一定時間ごとにデータを取得しております。

このとき割り込みの周波数を100[Hz]に設定すると、
プログラムは0.01秒毎にタスクを行います。
(PCのCPUが十分であると考えて)
たとえばタスクA,B,Cを割り込みの1周期に1度行うとすれば、
Aのタスクは0.01秒ごとに遂行されます。

しかし、もしBというタスクが常に2秒かかるタスクだとすれば、
それぞれのタスクは2.01秒に1回しか遂行されません。
これはあれ程度しかたありません。

現在私の悩んでいる問題は、
A,Cというタスク(1回に1msもかからない)を0.01秒ごとに
遂行して、ある条件の時にBというタスクを行いたいとすると、
今のままでは、A,Cは普段0.01秒に1度タスクが遂行されますが、
Bが遂行されるときにはタスクが2秒(Bの遂行時間)待ちが生じます。
こんなとき、BをA,Cとは並列に遂行させ、
常にA,Cを0.01秒ごとに遂行させるにはどうすればよいでしょうか?
(ここで、Bが遂行中に次のBの命令がくることはないとします。)