public void Dispose()
{
lock (disposedLocker)
{
if (!disposed)
{
disposed = true;
while (workers.Count > 0)
{
RemoveThread();
}
loopFinished.Close();
GC.SuppressFinalize(this);
}
}
}