Код: Выделить всё
public IEnumerable ActiveNodes
{
get
{
for (int i = 0; i < _pool.Count; i++)
{
if (_pool[i].AvailableInPool)
{
yield return _pool[i];
}
}
}
}
Ни один из элементов в _pool когда-либо будет собираться, поскольку цель пула — хранить ссылки на все из них, чтобы предотвратить создание мусора.
Может ли кто-нибудь предложить способ разрешить итерацию по _pool чтобы не образовывался мусор?
При переборе пула все элементы в пуле, у которых есть значение AvailableInPool == true, должны быть перебраны. Порядок не имеет значения.
Подробнее здесь: https://stackoverflow.com/questions/548 ... ny-garbage
Мобильная версия