Итак, один из моих классов реализует IQueryable, для чего ему нужен метод GetEnumerator, а код выглядит так:
public IEnumerator<T> GetEnumerator()
{
this.ParseExpression(this.expression);
return this.GetResults()
}
private IEnumerator<T> GetResults()
{
//Processes the expression tree.
T t = Activator.CreateInstance(typeof(T));
yield return T;
}
Странная часть: когда элемент управления входит в первый метод, он пропускает его до конца (закрывающая фигурная скобка, прежде чем он входит в метод GetResults (). Означает ли это, что метод GetResults () выполняется неявно в другом потоке компилятором из-за того, что класс реализует IEnumerable?