Wallclock е просто купчина-базираните дървар написан на Python.
Wallclock предвижда някои прости инструменти за идентифициране на бавни части от кода си. Тя поддържа купчина работещи таймери, и докладва на дървото на времената за изпълнение, когато топчето се изпразва.
<Силен> Обикновено употребата
За времето код с wallclock, използвайте `` push`` и `` pop`` функции, предоставени от модула wallclock ::
& Nbsp; & Nbsp; & Nbsp; внос wallclock
& 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 главната ():
& Nbsp; & Nbsp; & Nbsp; & Nbsp; & Nbsp; & Nbsp; & Nbsp; wallclock.push ("обработка една молба", даде възможност = True)
& Nbsp; & Nbsp; & Nbsp; & Nbsp; & Nbsp; & Nbsp; & Nbsp; slow_function ()
& Nbsp; & Nbsp; & Nbsp; & Nbsp; & Nbsp; & Nbsp; & Nbsp; wallclock.pop ("обработка една молба")
& Nbsp; & Nbsp; & Nbsp; Основната ()
Това ще доведе до по-малко дърво на `` stderr`` обобщаване на времето, необходимо за изпълнение на `` главната () `` ::
& Nbsp; & Nbsp; & Nbsp; [3.001 сек] боравене една заявка
& Nbsp; & Nbsp; & Nbsp; & Nbsp; & Nbsp; [3.001 сек] бавно функция
В `` push`` функция отнема една позиционна аргумент, който е на етикета на таймера се вкарва на стека wallclock е. Това е нормално за кратко, описателна етикет за вида на работата, което се случва в рамките на времето. `` Push`` също отнема един незадължителен аргумент дума, `` enable``, която контролира дали тази покана да `` push`` трябва да започне синхронизация (ако не е вече започна). `` Wallclock`` игнорира разговори към `` push``, докато не бъде разрешен, и себе си изключва автоматично, когато позволеното `` push`` е `` pop``ped.
В `` функцията pop`` отнема една позиционна аргумент, който е на етикета да поп. Това дава възможност за по-лесно поставяне на `` push`` / `` pop`` двойки околните код, който може да се върне, или може да се повиши по изключение, без добавяне на допълнителни `` try`` / `` except`` блокове или подобни (но виж -долу за по-добър подход). `` Wallclock`` ще изскочи таймери на разстояние от стека докато намери таймер избута с премина етикета, или докато се изпразва стека таймер
<силни> Изисквания :.
- Python
Коментари не е намерена