def run(self):
try:
proc_name = self.name
#Open the bams
nBams = [] # nonTrim Bams
tBams = [] # trim Bams
for i in self.args.bam:
nBams.append(pysam.Samfile(i))
for i in self.args.pacBam:
tBams.append(pysam.Samfile(i))
while True:
next_task = self.task_queue.get()
if next_task is None:
# Poison pill means shutdown
logging.info('Thread %s: Exiting\n' % proc_name)
self.task_queue.task_done()
break
try:
answer = next_task(nBams, tBams)
except Exception as e:
logging.error("Exception raised in task %s" % (str(e)))
self.task_queue.task_done()
self.result_queue.put("Failure - UNK - %s" % str(e))
logging.info("fail in groupid=%s" % next_task.data.name)
continue
self.task_queue.task_done()
self.result_queue.put(answer)
return
except Exception as e:
logging.error("Consumer %s Died\nERROR: %s" % (self.name, e))
return
评论列表
文章目录