Wallclock on yksinkertainen pino tulostavoitteet metsuri kirjoitettu Pythonilla.
Wallclock tarjoaa joitakin yksinkertaisia työkaluja tunnistaa hidas osien koodi. Se väittää pino käynnissä ajastimet, ja raportoi puu suoritusajat, kun pino tyhjenee ulos.
Yksinkertainen Käyttö
Ajoin koodia wallclock, käytä `` push`` ja `` pop`` tehtävistä säädetään wallclock moduuli ::
& Nbsp; & nbsp; & nbsp; tuonti wallclock
& Nbsp; & nbsp; & nbsp; def slow_function ():
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; wallclock.push ("hidas") lisäksi
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; tuonti aika
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; time.sleep (3)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; wallclock.pop ("hidas") lisäksi
& Nbsp; & nbsp; & nbsp; def main ():
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; wallclock.push ('käsittely yksi pyyntö', enable = true)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; slow_function ()
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; wallclock.pop ('käsittely yksi vaatimus)
& Nbsp; & nbsp; & nbsp; main ()
Tämä tuottaa pienen puun `` stderr`` yhteenvedon aika toteuttaa `` main () `` ::
& Nbsp; & nbsp; & nbsp; [3,001 sekuntia] käsittelyyn yksi pyyntö
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; [3,001 sekuntia] hidas toiminto
`` Push`` toiminto kestää yhden asennon argumentti, joka on etiketissä ajastimen ollessa työnnetään wallclock n pino. Tämä on yleensä lyhyt, kuvaava etiketti sellaista työtä, joka tapahtuu alle ajoitus. `` Push`` ottaa myös yksi valinnainen hakusana argumentti, `` enable``, joka ohjaa, onko tämä puhelu `` push`` pitäisi alkaa ajoitus (jos se ei ole jo alkanut). `` Wallclock`` sivuutetaan puhelut `` push`` ennen kuin se on otettu käyttöön, ja poistaa itsensä automaattisesti, kun mahdollistaa `` push`` on `` pop``ped.
`` Pop`` toiminto kestää yhden asennon argumentti, joka on etiketti pop. Tämä mahdollistaa yksinkertaisen lisätään `` push`` / `` pop`` paria ympäröivän koodia, joka voisi palata, tai saattaa herättää poikkeus, lisäämättä ylimääräisiä `` try`` / `` except`` lohkoja tai vastaava (mutta katso Alla parempi lähestymistapa). `` Wallclock`` ponnahtaa ajastimet pois pinosta, kunnes se löytää ajastin työnnetään kulunut etiketti, tai kunnes se tyhjenee ajastin pino.
Vaatimukset :
- Python
Kommentteja ei löytynyt