保持していなければなりません。保持している間は、決して呼び出されてはなりません。ないと結果としてデッドロックします。実行の間に呼び出されるかもしれないことに注意してください。返る前にコールアウトが完全に停止されることを保証します。同じ流儀で確立します。保持されなければなりません。コールアウトの現在の状態へのアクセスを提供します。特有の多くの競合条件を避けることができます。あるかどうかチェックします。返すことに注意してください。フラグをクリアします。コールアウト関数を呼び出します。停止やリセットを試みながら並行して起動される可能性があります。そのミューテックスを待ってブロックされてしまいます。多くのメカニズムを提供します。このミューテックスは競合条件を避けるために使用できます。使用する必要がまだあることに注意してください。リターン値は、コールアウトが削除されたかどうかを示します。値はコールアウト関数がまさに呼び出されようとしていることを示します。同等なメカニズムがなにもないことに注意してください。マクロは競合条件を回避するために連携して使用できます。両方でコールアウトをマークします。フラグを最初にクリアすることによってコールアウトを処理し始めます。フラグをクリアしません。フラグをクリアすることを要求します。フラグの両方をクリアします。フラグをチェックして動作なしで戻るべきです。使用して再スケジュールされたことを示します。返す場合、コールアウト関数は同様に動作なしで返るべきです。これは、コールアウトが停止されたことを示します。関数がいつも競合なしで使用できます。動作なしで戻ることになります。フラグが実際にコールアウトが有効か無効かを反映することを確実にします。実質的に無効化されています。停止されたコールアウトを検出するさせるために安全でないかもしれません。呼び出しを使用しなければなりません。