Profiler modulo
Modulo di profilatura della memoria
Istruzioni:
1var profiler = require('profiler');
Funzione statica
saveSnapshot
Salva un'istantanea dell'heap in base al nome specificato
1static profiler.saveSnapshot(String fname);
Parametri di chiamata:
- fname: Stringa, nome dell'istantanea dell'heap
loadSnapshot
Leggi un'istantanea dell'heap in base al nome specificato
1static HeapSnapshot profiler.loadSnapshot(String fname);
Parametri di chiamata:
- fname: Stringa, nome dell'istantanea dell'heap
Risultato di ritorno:
- HeapSnapshot, Restituire l'istantanea dell'heap di lettura
takeSnapshot
Ottieni l'istantanea dell'heap del nodo temporale corrente, l'istantanea dell'heap registra lo stato dell'heap JS nel momento corrente
1static HeapSnapshot profiler.takeSnapshot();
Risultato di ritorno:
- HeapSnapshot, Torna all'istantanea delle informazioni sull'heap ottenuta
diff
Esegui la funzione data e confronta le modifiche dell'heap v8 prima e dopo l'esecuzione
1static Object profiler.diff(Function test);
Parametri di chiamata:
- test: Funzione, data la funzione da testare
Risultato di ritorno:
- Object, Restituisce il risultato del confronto
start
Avvia un registro di campionamento dello stato in esecuzione
1
2
3static Timer profiler.start(String fname,
Integer time = 60000,
Integer interval = 100);
Parametri di chiamata:
- fname: Stringa, dato il nome del file di archiviazione del registro
- time: Intero, specificare il tempo di campionamento, il valore predefinito è 1 minuto
- interval: Intero, specificare l'intervallo di tempo, il valore predefinito è 100 millisecondi
Risultato di ritorno:
- Timer, Torna al timer di campionamento, puoi interrompere il campionamento in anticipo tramite il metodo chiaro
costante
Node_Hidden
Nodi nascosti, che possono essere filtrati quando visualizzati all'utente
1const profiler.Node_Hidden = 0;
Node_Array
Vettore
1const profiler.Node_Array = 1;
Node_String
Corda
1const profiler.Node_String = 2;
Node_Object
Oggetti JS (eccetto stringhe e array)
1const profiler.Node_Object = 3;
Node_Code
Codice compilato
1const profiler.Node_Code = 4;
Node_Closure
Chiusura della funzione
1const profiler.Node_Closure = 5;
Node_RegExp
Espressione regolare
1const profiler.Node_RegExp = 6;
Node_HeapNumber
Numeri ordinati nella pila
1const profiler.Node_HeapNumber = 7;
Node_Native
Oggetti nativi (non nell'heap v8)
1const profiler.Node_Native = 8;
Node_Synthetic
Oggetto sintetico
1const profiler.Node_Synthetic = 9;
Node_ConsString
Stringa concatenata
1const profiler.Node_ConsString = 10;
Node_SlicedString
Corda divisa
1const profiler.Node_SlicedString = 11;
Node_Symbol
Simbolo (ES6)
1const profiler.Node_Symbol = 12;
Node_SimdValue
Valore SIMD ordinato nell'heap (ES7)
1const profiler.Node_SimdValue = 13;
Edge_ContextVariable
Variabili nella funzione
1const profiler.Edge_ContextVariable = 0;
Edge_Element
Elementi nell'array
1const profiler.Edge_Element = 1;
Edge_Property
Proprietà dell'oggetto nominato
1const profiler.Edge_Property = 2;
Edge_Internal
Link inaccessibile JS
1const profiler.Edge_Internal = 3;
Edge_Hidden
Indicare il nodo in cui è necessario calcolare in anticipo la dimensione dello spazio
1const profiler.Edge_Hidden = 4;
Edge_Shortcut
Punta a un nodo la cui dimensione dello spazio non può essere calcolata in anticipo
1const profiler.Edge_Shortcut = 5;
Edge_Weak
Un riferimento debole (ignorato da GC)
1const profiler.Edge_Weak = 6;