3
我々は法の範囲ではなく、クラススコープでスレッドを宣言した場合、それは次のように、ガベージコレクタのための任意の違いを生むん:はいスレッドの作成スコープとガベージコレクタ
//scenario 1
public class Foo
{
public Foo()
{
new Thread(()=> /*engine*/) { IsBackground = true }.Start();
}
}
//scenario 2
public class Bar
{
private readonly Thread _engineThread = null;
public Bar()
{
_engineThread = new Thread(()=> /*engine*/) { IsBackground = true };
_engineThread.Start();
}
}
シナリオ1またはシナリオ2では、 'Foo'または' Bar'のインスタンスがスレッドの終わりより前のガベージコレクション*に適している可能性がありますか?はいの場合、スレッドが終了する前にそれらを収集できますか? – remio
@remio:はい、何も参照を保持していない場合、ガベージコレクションされる可能性があります。 –