【发布时间】:2011-05-28 15:44:36
【问题描述】:
我有一个 Python 程序,它产生许多线程,一次运行 4 个,每个都执行昂贵的操作。伪代码:
for object in list:
t = Thread(target=process, args=(object))
# if fewer than 4 threads are currently running, t.start(). Otherwise, add t to queue
但是当程序运行时,OS X 中的 Activity Monitor 显示 4 个逻辑内核中的 1 个处于 100%,其他的几乎为 0。显然我不能强迫操作系统做任何事情,但我已经以前从来没有关注过像这样的多线程代码的性能,所以我想知道我是否只是遗漏或误解了某些东西。
谢谢。
【问题讨论】:
标签: python multithreading performance