0

だから私はUIスレッドを持っています。人は何かを気に入ってクリックします。したがって、クリックするといくつかの関数呼び出しがトリガーされます。基礎となる関数呼び出しの 1 つは、数回試行してそのクレイジーな強打を行うことにより、汚れたディスクを読み取る CDROM ドライバーを使用します。

レスポンシブ UI が必要なので、関数呼び出しを待機します。そのため、人がクリックすると、関数は制御を UI スレッドに放棄します。関数は CDROM を読み取ろうとしますが、実際には汚れているため、呼び出し元に例外をスローします。その呼び出し元は再試行回数をカウントし、3 回試行し続けます。

それで、これがすべて待っている場合、どこにカウントを保持しますか?

カウントをより低いレベルに保ち、そのレベルが await で放棄された場合、IT は放棄されているため、3 回試行するまで再試行し続けることはできません。

でも諦めないとレスポンシブUIを維持できません。

Task オブジェクトにカウントを保持しますか? そして、正確にどのスレッド/待機レベルが再試行回数のチェックを担当できるのでしょうか?

4

1 に答える 1