質問: true) break; //100ms待ってから await Task.Delay(100); } }); return; } ``` ### わからないこと ``` test_async(); ``` がなければ、エラーになりませんので、ここが悪いとは思います。 ``` await test_async(); ``` にしてもだめでしたので、悩んでいます。 タイマーの呼び出しの中で非同期処理をしている関数を呼んではいけない、ということですか? ### 参考 参考にさせていただいたのはこちらの中ほどのコードでした。 https://webbibouroku.com/Blog/Article/cs-timer ### エラー ``` 例外がスローされました: 'System.InvalidOperationException' (System.Windows.Forms.dll の中) 型 'System.InvalidOperationException' の例外が System.Windows.Forms.dll で発生しましたが、ユーザー コード内ではハンドルされませんでした 有効ではないスレッド間の操作: コントロールが作成されたスレッド以外のスレッドからコントロール 'label_Timer' がアクセスされました。 ``` ### 改めて 右も左もわからず、思うがまま組んでみてます。 そもそも、それじゃダメ、という意見もあるかと思います。 よろしければ、教えていただければうれしいです。 よろしくお願いいたします(*- -)(*_ _)ペコリ
回答: > > test_async(); > > timer.Stop(); > > > タイマーを止める前に、test_async()を呼び出しますが、問題ありません? 多重になって問題を起こす気がします。