2

Task完成したオブジェクト を返す最良の方法は何ですか?

Task.Delay(0)、またはTask.FromResult<bool>(true)何でも 書くことが可能です。

しかし、最も効率的な方法は何ですか?

4

4 に答える 4

4

Task.FromResult が最も直接的です。また、いくつかの一般的な整数などの組み込みの結果も含まれます。ただし、値が「明らかな」値ではなく (組み込みの処理がない)、シナリオで頻繁に返される可能性がある場合は、独自の値を作成できます。フィールドにキャッシュされた結果 (適切な場合は静的) - ただし、結果自体ではなく、Task をキャッシュすることが重要です。それ以外の場合は、毎回 Task.FromResult を使用します。

于 2013-05-06T22:03:54.530 に答える
2

私は少し遅れていると思います。ただし、更新されたバージョンのために、この回答を共有したいと思います。

完了したタスクを返したい場合は、を使用する必要があります。

return Task.CompletedTask;

これにより、ステータスも自動的に に設定されますRanToCompletion

于 2022-02-03T10:50:36.997 に答える