我正在使用RestSharp向Elastic Search集群发送请求,我只是好奇这个对象何时会被宣布超出范围并被GC收集。
request.AddBody(new Record
{
pty_name_prefix = drow[3].ToString(),
pty_surname = drow[4].ToString(),
pty_name_suffix = drow[5].ToString(),
pty_forename = drow[6].ToString(),
pty_address = drow[7].ToString(),
pty_full_name = drow[6] + " " + drow[4]
});
感谢。
答案 0 :(得分:3)
重要的是要意识到垃圾收集可能永远不会发生。
只要你的机器有足够的内存,GC就可以简单地决定“一切运行正常,我不需要收集旧内存”。
因此,我们只能谈论“有资格进行垃圾收集”的对象。一旦符合条件,GC 可能在未来的任何时间发生(或者根本不会发生)。
答案 1 :(得分:1)
只要对象上没有有效的引用,那么它的内存 available 就可以进行垃圾回收。阅读MSDN GC Class和Fundamentals of Garbage Collection: Generations了解背景信息。