グローバル変数にマクロAかBが実行中or非実行中を記録させて
もし実行中なら「トリガーまで待機」で変数変化時まで待機させればいいんじゃね?