我在實現IEnumerable接口的對象池中有以下代碼。IEnumerable垃圾創建
public IEnumerable<T> ActiveNodes
{
get
{
for (int i = 0; i < _pool.Count; i++)
{
if (_pool[i].AvailableInPool)
{
yield return _pool[i];
}
}
}
}
在_pool元素都永遠不會被收集,爲池的目的是保持引用他們都避免垃圾產生。
此代碼中的任何內容是否會生成垃圾?
(也許C#創建稍後將被收集一個IEnumerable對象?)