簡単に言えば、2 つのモーターを並行して操作し、両方の準備が整ったら、3 番目のスレッドを続行します。
以下は、私が今持っているものの画像です。2 つのトップ スレッドでは、モーター B と C を「無制限」に設定し、両方がスイッチをトリガーするまで待機してから、両方に個別のブール変数を設定します。
次に、3 番目のスレッドで、これら 2 つの変数を 1 秒間隔でポーリングし、AND 演算でループ終了条件が true になるまで続けます。
これは組み込みシステムなので、ここでは問題ないかもしれませんが、「PC プログラミング」では、この種のポーリング ループを行うのはかなり恐ろしいことです。
質問:両方のいずれかを実行できますか?
- この種のポーリングループなしで変数を待ちますか?
- 変数をまったく使用せずにスレッドが終了するのを待ちますか?