1

このパターンを使用するプロジェクトに取り組んでいます

var businessEntity = new DAL().GetObject(id);
// do something with the business entity.

このパターンに従った人はいますか?

これにより、メモリ管理の問題が発生しますか? ガベージ コレクターに問題はありますか?

ありがとう

4

4 に答える 4

2

それはうまく動作します。それは問題なくガベージコレクションされます。実装とオブジェクトに応じて、行の最後でコレクションのマークが付けられるか、一度businessEntity範囲外になります。

于 2011-01-12T01:43:25.687 に答える
1

これは非常に典型的なコードであり、ガベージ コレクターで問題が発生することはありません。

名前のないオブジェクトへの参照は、GC のルート セットにある VM スタックにあります (それ以外の場合、メソッドを呼び出すことができませんでした)。

于 2011-01-12T01:43:08.800 に答える
0

DALいいえ、他に何もする必要がないか、他に何も指していない場合、GC は最終的にオブジェクトをクリアします。オブジェクトへの参照があるbusinessEntityため、参照が無効になるまでGCはオブジェクトに触れません。

于 2011-01-12T01:42:19.573 に答える
-1

このオブジェクトは、businessEntry によって参照されている間は有効であり、変数が範囲外になった後に収集されます。

于 2011-01-12T01:42:58.097 に答える