IEnumerator <U> IEnumerable <U> .GetEnumerator() { if (this.enumerator == null) { throw new ArgumentNullException("Enumerator is null"); } foreach (var input in this.enumerator) { ConcurrencyTaskEventArgs <T, U> e = new ConcurrencyTaskEventArgs <T, U>(input); DoProcess(e); yield return(e.Output); } yield break; }
/// <summary> /// Do custom processing here /// </summary> /// <param name="e"></param> public abstract void DoProcess(ConcurrencyTaskEventArgs <T, U> e);