Task.CompletedTask VS Task.FromResult(0)

C#

  • Task.CompletedTask
  • Task.FromResult(0)

メソッドがvoid型で、特に値を返すタスクが無いときに使われます。
戻り値はTaskにしないといけないが、async-awaitで返すものはない時です。意味は、どちらも『タスクを無理やり作る』って感じです。

CompletedTaskの方が新しい書き方なので、迷ったときは、こちらを使っていきましょう。

Task.CompletedTask を使う

ただ、.net framework4.6以前は、FromResult(…)の書き方しかできません。
その場合は、素直にFromResult(…)を使いましょう。