def run(self):
logger.info("starting task daemon...")
pool = gevent.pool.Pool(self.pool_size)
for i in range(self.pool_size):
pool.apply_async(self.consumer)
p = gevent.spawn(self.producer)
p.join()