0

http://msdn.microsoft.com/en-us/library/xt0a1s34(v=vs.100).aspx

パラメーター

目標

タイプ: System.Object

追跡するオブジェクトまたは null。

私がこれを理解できる限り、それは「null」が WeakReference オブジェクトの有効なパラメーターであることを意味します...

私が見る問題は次のとおりです。値を抽出するときに、Target が null でないかどうかを確認します...そうでない場合は、それをオブジェクトとして使用します。しかし、元のターゲットとして "null" が渡された場合、weakReference オブジェクトのプロパティ "Target" は情報を提供しません: オブジェクトは既にガベージ コレクションされているか、常に null でした。

質問: 「ターゲット」が null の場合、元のオブジェクトも null であるため、どうすればそれを理解できますか?

ありがとう。

4

2 に答える 2

0

「null」の代わりに特別なオブジェクト(「データがない」ことを意味する)を使用する必要があるようです(「キャッシュにnullを挿入できますか?」の質問の回答と同じ/同様)

于 2012-05-01T03:11:53.630 に答える
0

IsAlive プロパティを試してみてください。指しているオブジェクトが収集されたかどうかを示すブール値です。

于 2012-04-30T04:35:54.540 に答える