22. november 2007 - 20:58Der er
5 kommentarer og 1 løsning
Elapsed time
Hej Eksperter! Bliver desværre nødt til at spørge jer til råds igen! Har java en indbygget funktion som kan bruges som "stopur"? Altså, jeg har en metode, hvor jeg gerne vile finde ud af hvor lang tid der går fra start til slut. Eksempel: public void beregning(); { startUr(); kode, kode, kode; mere kode, mere kode; stopUr(); printTid(); }
Altså at den starter uret i starten af metoden, og stopper uret i slutningen af metoden, og derefter smider tiden ind i en variabel som så kan udskrives, og bruges efter behov.
Kunne forestille mig at det var noget med at start(); gemmer et tidspunkt, og stop(); gemmer ligeledes et tidspunkt, og regner så forskellen mellem tid1 og tid2. Men kan ikke gennemskue hvordan det skulle gøres.
Lad være at stole for meget på den slags tider. Nutildags er der er næsten ingen operativsystemer der ikke multitasker, du ved aldrig hvilket andet program der tager en timeslot (eller hvornår Javas VM starter en garbage collect). De tider du får kan variere meget fra kørsel til kørsel.
Hvis man kører noget tilpas længe (f.eks. > 1 minut) og der ikke kører nogle tunge ting på maskinen så er det såmænd ganske brugbare resultater man får.
Man kan evt. prøve at lade programmet måle det samme 5 gange og se om tiden er den samme for alle kørsler. Er de det så er der pæne chancer for at man er OK.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.