public override void Abort() { lock (this) { Reset(true); consumer.Abort(); if (nextPerThread != null) { nextPerThread.Abort(); } } }