0

dottraceのドキュメントを読んだ後、私は次のことに気づきました。

  1. デッドオブジェクトは、スナップショットのエンドポイントの前に削除されたオブジェクトです。
  2. ガベージオブジェクトは、開始点の後に割り当てられ、終了点の前に削除されるオブジェクトです。つまり、「ガベージオブジェクト」は「デッドオブジェクト」のサブセットです。

しかし、いくつかのプロファイリングセッションを行った後、「ガベージオブジェクト」の数が同じクラス(たとえばSystem.String)の「デッドオブジェクト」の数よりもはるかに多いことがわかりました。この現象をどのように解釈すればよいですか?

4

1 に答える 1

3

私は自分で答えを見つけました:「デッドオブジェクト」はポイントAの前に割り当てられ、ポイントBの前に解放されたオブジェクトであり、「ガベージオブジェクト」はポイントAの後に割り当てられ、ポイントBの前に解放されます。

于 2010-04-25T16:58:42.020 に答える