我正在打开一些cosumers来处理python中的一些任务。 有时,我无法弄清楚在哪种情况下,我得到这样的错误:
流程消费者-9:追溯(最近一次呼叫最后一次):
文件“/usr/lib/python2.7/multiprocessing/process.py”,第258行,在 _bootstrap self.run()文件“/home/fon/workspace/acopuzzle/consumer.py”,第26行,在运行中 next_task = self.task_queue.get()文件“/usr/lib/python2.7/multiprocessing/queues.py”,第117行,in get res = self._recv()
UnicodeDecodeError:'utf8'编解码器无法将字节0xc3解码到位 26154714:无效的连续字节
所以基本上在/usr/lib/python2.7/multiprocessing/queues.py中的这一行
self._recv = self._reader.recv
Consumer类的方法运行是这样的:
def run(self):
proc_name = self.name
while True:
next_task = self.task_queue.get() # <-- Here is the error
if next_task is None:
self.task_queue.task_done()
break
answer = next_task()
self.task_queue.task_done()
self.result_queue.put(answer)
return
你有没有经历过类似的事情,你能指出我的方向吗?感谢