收集对象成员

时间:2019-07-01 14:53:51

标签: c# garbage-collection nullreferenceexception

我正在调试一些代码,在这些代码中野生NullReferenceException出现“随机”。异常与foreach一致。集合“ items”不为null。理论上,“值”都不为空。根本不可能。

是否可以在不删除对象的情况下GC删除对象的成员?这是唯一的线索。所以:

  • 列表“ items”上的对象不为空
  • 其中一些成员的成员值为null。在为值分配了非空集合的地方

可视化情况的示例代码:

if(items.Any(item => item.Condition))
    return;
foreach (var value in items.SelectMany(item => item.Values).Distinct())
{
     Console.WriteLine(value);
}

我知道我没有提供此问题的背景知识,但我想知道是否甚至可以通过GC进行。

0 个答案:

没有答案