2013-04-19 7 views
9

Diese Frage bezieht sich auf Devel::NYTProf Profiler.NYTProf Profiler für Perl

Die Ausgabe, die ich aus dem Profiler für eine einfache Linie erhalten wie:

use strict; 

OUTPUT:

statements: 3 
Time on Line: 22µs 
Calls: 2 
Time in Sub: 12µs 

Also meine Fragen sind:

  1. Wie ist das 3 Aussagen?
  2. Die Zeit in Sub .. Was bedeutet das?
  3. Stellt dies die Zeit dar, die für die Konvertierung dieses Moduls in optree aufgewendet wurde, oder ist das etwas anderes?
  4. Ist diese Kompilierphase Zeit oder Laufphasenzeit?

Vielen Dank im Voraus

Antwort

7
use Foo; 

zur Ausführung

require Foo; 
Foo->import; 

bei der Kompilierung entspricht. Vielleicht ist das Sub, das aufgerufen wurde, strict::import.

aktualisieren: das Programm Profilierungs

require strict; 
strict->import; 

zeigt, dass Devel::NYTProf zählt die require Anweisung als eine Unter Anruf und import als andere.