public virtual void Shutdown () { lock (pendingTasks) { shutdown = true; ST.Monitor.PulseAll (pendingTasks); } }