стандартної дати є простою стек на основі продуктивності реєстратор написано в Python.
Стандартної дати наводяться деякі прості інструменти для виявлення повільні ділянки коду. Він підтримує стек запущених таймерів і повідомляє дерево час виконання, коли стек очищає поза.
Просте використання
Для тимчасового коду з стандартної дати, використовуйте `` push`` і `` pop`` функцій, що надаються модулем стандартної дати ::
І NBSP; & NBSP; & NBSP; імпорт стандартної дати
І NBSP; & NBSP; & NBSP; Def slow_function ():
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; wallclock.push ('функція повільного »)
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; імпорт час
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; time.sleep (3)
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; wallclock.pop ('функція повільного »)
І NBSP; & NBSP; & NBSP; Def Main ():
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; wallclock.push ('обробки одного запиту ", Enable = True)
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; slow_function ()
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; wallclock.pop ('обробки одного запиту ")
І NBSP; & NBSP; & NBSP; Main ()
Це дасть невелике дерево на `` stderr`` підведення час, необхідний для виконання `` Main () `` ::
І NBSP; & NBSP; & NBSP; [3,001 сек] обробки одного запиту
І NBSP; & NBSP; & NBSP; & NBSP; & NBSP; [3,001 сек] функція повільного
`` Push`` функція приймає один позиційний параметр, який є етикетка таймера штовхають в стек стандартної дати в. Це, як правило, короткі, описові мітки для тієї роботи, що відбувається під часу. `` Push`` також бере один необов'язковий аргумент ключове слово `` enable``, який управляє цей заклик до `` push`` повинні почати відлік (якщо він ще не запущений). `` Wallclock`` ігнорує виклики в `` push``, поки він не був включений, і відключає себе автоматично, коли дозволяє `` push`` є `` pop``ped.
`` Функція pop`` займає один позиційний параметр, який є етикетка поп-музики. Це дозволяє для простого введення `` push`` / `` pop`` пари навколишні код, який може повернути або може викликати виключення, без додавання додаткових `` try`` / `` except`` блоків або аналогічних (але см Нижче для кращого підходу). `` Wallclock`` з'явиться таймери з стека до тих пір, поки не знайде таймер олл-ін з минулого етикетці, або до тих пір, поки очищає стек таймера
Вимоги :.
- Python
Коментар не знайдено