public void Stop() { if (pollingThread != null) { pollingThread.Abort(); pollingThread.Join(); pollingThread = null; } workers.AsParallel().ForAll(worker => { worker.Stop(); }); workers.Clear(); }