【发布时间】:2014-04-27 12:07:30
【问题描述】:
使用 Python 2.7.6
在 Ubuntu 14 上运行它我简化了脚本来显示我的问题:
import time
import multiprocessing
data = range(1, 3)
start_time = time.clock()
def lol():
for i in data:
print time.clock() - start_time, "lol seconds"
def worker(n):
print time.clock() - start_time, "multiprocesor seconds"
def mp_handler():
p = multiprocessing.Pool(1)
p.map(worker, data)
if __name__ == '__main__':
lol()
mp_handler()
还有输出:
8e-06 lol seconds
6.9e-05 lol seconds
-0.030019 multiprocesor seconds
-0.029907 multiprocesor seconds
Process finished with exit code 0
使用time.time() 会给出非负值(此处标记为Timer shows negative time elapsed)
但我很好奇 python multiprocessing 中的 time.clock() 和从 CPU 读取时间有什么问题。
【问题讨论】:
标签: python python-2.7 time multiprocessing