在Python中测量多线程代码的处理时间

2 投票
1 回答
1434 浏览
提问于 2025-04-16 20:39

我在运行以下代码,想要测量我的PG进程完成需要多长时间,不过“toc-tic”显示的时间是在整个循环结束后才出来的。有没有办法让我可以测量总时间和每个线程的时间呢?谢谢!

tic = time.clock()
for i in range(0,2):        
    start = i * step
    end = start + step

    pg = PatternGenerator()
    pg.counter = start
    pg.pos = i
    pg.data = lines[start:end]  

    pg.start()

toc = time.clock()

print toc - tic

祝好,
安迪

1 个回答

2

在 toc 之前连接线程!

你可以把这些对象放到一个列表里,然后对它们调用连接操作!

在 for 循环之前:

pglist = [] 
... start the threads...

for pg in pglist:
  pg.join()

toc = time.clock()

print toc - tic

撰写回答