【发布时间】:2012-12-15 12:35:38
【问题描述】:
我在 python 上使用多处理解码消息。我有20个工人。工人解码消息。解码后的消息大小约为 0.1 - 1MB。
def do_work(message):
try:
msg = pickle.loads(message[1])
decoded_msg = codec.DECODE(Message(**msg).content)
except:
decoded_msg = "Unable to decode message"
我有大约 2k - 5k 条消息。解码过程比较快。但是当我试图从工人那里接收结果时:
decoded_msg.append(outQ.get())
速度太慢了。
我的问题是为什么接收过程如此缓慢以及如何提高它的性能?
【问题讨论】:
-
outQ是什么对象? -
codeq = multiprocessing.JoinableQueue() outQ = multiprocessing.Queue()code
标签: python performance multiprocessing