'\param nworkers (integer) number of worker threads to start
\param name (string) prefix for the worker threads\' name'

def __init__(self, nworkers, name='Pool'):

    self._workq = Queue.Queue()
    self._closed = False
    self._workers = []
    for idx in xrange(nworkers):
        thr = PoolWorker(self._workq, name=('Worker-%s-%d' % (name, idx)))
        try:
            thr.start()
        except:
            self.terminate()
            raise
        else:
            self._workers.append(thr)
