Профилирование генераторов Python

I ' m адаптировать приложение, которое интенсивно использует генераторы для получения своих результатов, для предоставления веб-интерфейса web.py.

До сих пор я мог заключить вызов для цикла for и операторов, производящих вывод, в функцию и вызов что с использованием cProfile.run () или runctx () . Концептуально:

def output():
    for value in generator():
        print(value)

cProfile.run('output()')

В web.py мне нужно обернуть его следующим образом, так как я хочу немедленно выводить результаты потенциально длительных вычислений на каждом шаге итерации, используя yield :

class index:
    def GET(self):
        for value in generator():
            yield make_pretty_html(value)

Is есть ли способ профилировать все вызовы генератора, как в первом примере, когда он используется, как во втором?

9
задан Daniel Beck 25 August 2010 в 10:35
поделиться

1 ответ

Можете ли вы просто использовать time.time() для профилирования интересующих вас частей? Просто получите текущее время и вычтите из последнего измерения.

0
ответ дан 3 November 2019 в 05:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: