タグ: 弱参照

【C#】System.Lazyクラスの弱参照版

System.Lazyクラスは、オブジェクトの生成に時間がかかる場合などに、必要になった時点で生成を行い、以後生成済みのオブジェクトを使うという機能をスレッドセーフで提供するものです。
今回はそれに弱参照を使って、生成後不要になったら一旦メモリから解放する機能を追加してみました。

ソースコードを以下に置いておきます。
これを使うにはWeakRef<T>クラスが必要なので、一緒に使ってください。
名前空間は変更して頂いて構いません。

https://www.myqnapcloud.com/smartshare/68704567o61n820u6428z5z3_6IiLTtA


弱参照の扱いを簡単にするクラスを作ってみた

C#で弱参照を扱うクラス「System.WeakReference」を使っていて、扱いにくいと思ったので、もっと扱いやすくなるよう独自にクラスを作ってみました。
使いたい方はご自由にお持ちください。
基本usingしなくても使えるよう名前空間がSystemになっていますが、気に入らない方はそれぞれ名前空間を変更してください。

http://www.myqnapcloud.com/smartshare/68704567o61n820u6428z5z3_6h1wEPX