ずっと気になっていた事の答えがMSDNのブログに載っていたので
忘れないうちにメモメモ。
TaskクラスはIDisposableを実装しています。
なので、Disposeメソッドが定義されているのですが
通常、これを呼んでいるソースを見たことがありません。
(私自身も呼んでないです。)
とはいっても、定義されている以上呼ばないといけないのかなあって
思っていたりして気になっていました。CodeRush入れているとCodeIssueで
警告でたりするので・・・。
で、答えはMSDNのブログに書いてありました。
- Do I need to dispose of Tasks?
上記のブログから一部抜粋です。
Here’s my short answer to this question:
“No. Don’t bother disposing of your tasks.”
気にする必要ないよってことらしいです。
Taskクラスは、内部でWaitHandleを持っているのでIDisposableを実装している
けど、ファイナライズ時に解放されるので、特に呼ばなくていいよって事らしいです。
過去の記事については、以下のページからご参照下さい。
- いろいろ備忘録日記まとめ
サンプルコードは、以下の場所で公開しています。
- いろいろ備忘録日記サンプルソース置き場