c # yield compute будет задерживать выполнение каждой итерации цикла только в том случае, если этот конкретный перечисляемый элемент действительно нужен вызывающей стороне.Можно ли объединить несколько таких функций возврата и при этом выставить динамически перечисляемый набор конечному вызывающему объекту?
public IEnumerable<string> GetDelayedCompute1()
{
// compute ...
foreach(var s in results)
{
yield return s;
}
}
public IEnumerable<string> GetDelayedCompute2()
{
// compute ...
foreach(var s in results)
{
yield return s;
}
}
public IEnumerable<string> GetResults()
{
// how to combine results of GetDelayedCompute1 and GetDelayedCompute2
// and yield return without forcing enumeration
}