[解決済み] 警告 CS4014」を抑制する。この呼び出しは待機されていないため、現在のメソッドの実行は続行されます... "
2022-04-13 04:36:55
質問
との重複はありません。 C#でawaitを使わずに非同期メソッドを安全に呼び出すにはどうしたらいいですか? .
以下の警告をきれいに消すにはどうしたらいいですか?
警告 CS4014: この呼び出しは待ち受けされていないため、呼び出しが完了する前に現在のメソッドの実行が続行されます。呼び出しの結果に対して 'await' 演算子を適用することを検討してください。
簡単な例です。
static async Task WorkAsync()
{
await Task.Delay(1000);
Console.WriteLine("Done!");
}
static async Task StartWorkAsync()
{
WorkAsync(); // I want fire-and-forget
// more unrelated async/await stuff here, e.g.:
// ...
await Task.Delay(2000);
}
試して気に入らなかったもの
static async Task StartWorkAsync()
{
#pragma warning disable 4014
WorkAsync(); // I want fire-and-forget here
#pragma warning restore 4014
// ...
}
static async Task StartWorkAsync()
{
var ignoreMe = WorkAsync(); // I want fire-and-forget here
// ...
}
更新情報
を使用するようになったので
オリジナルの回答
が編集されたので、受理された回答を
C#7.0を使用したものは破棄されます。
とは思えないので
ContinueWith
はここでは適切です。fire-and-forget操作の例外を記録する必要があるときは、私はもっと手の込んだ方法を用います。
Stephen Clearyが提案したものです。
.
解決方法は?
C# 7 では 廃棄物 :
_ = WorkAsync();
関連
-
[解決済み】「The breakpoint will not currently be hit」を改善するには?このドキュメントにはシンボルが読み込まれていません。" という警告はどうすれば改善されますか?
-
[解決済み】WebForms UnobtrusiveValidationModeは、jqueryのScriptResourceMappingを必要とする
-
[解決済み】なぜこのコードはInvalidOperationExceptionを投げるのですか?
-
[解決済み】EF 5 Enable-Migrations : アセンブリにコンテキストタイプが見つかりませんでした
-
[解決済み】2年前のMSDateを把握する【クローズド
-
[解決済み】Unityでゲームオブジェクトのすべての子をループスルーして破壊する方法?
-
[解決済み] メソッドの実行時間を計算する
-
[解決済み] 現在のメソッドを呼び出したメソッドを見つけるにはどうすればよいですか?
-
[解決済み] C#でawaitを使わずに非同期メソッドを安全に呼び出す方法
-
[解決済み] この呼び出しが待機されていないことを警告し、現在のメソッドの実行を継続します。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】エラー。「戻り値を変更できません」 C#
-
[解決済み] エンティティタイプ ApplicationUser は、現在のコンテキストのモデルの一部ではありません。
-
[解決済み】プログラム実行中に1秒待つ
-
[解決済み] [Entity Framework 4.1でエンティティに関連オブジェクトを追加する際に、エンティティオブジェクトをIEntityChangeTracker.の複数のインスタンスから参照できない。
-
[解決済み】パディングが無効で、削除できない?
-
[解決済み】Unity3DでOnTriggerEnterが動作しない件
-
[解決済み】値をNULLにすることはできません。パラメータ名:source
-
[解決済み】WSACancelBlockingCallの例外について
-
[解決済み】2年前のMSDateを把握する【クローズド
-
[解決済み] C#でawaitを使わずに非同期メソッドを安全に呼び出す方法