profilatore del modulo
modulo profiler di memoria
Istruzioni:
1var profiler = require('profiler');
funzione statica
getHeapCodeStatistics
get = statistiche per il codice nell'heap v8 e i relativi metadati
1static Object profiler.getHeapCodeStatistics();
risultato di ritorno:
- Object, restituisce le statistiche dei metadati
getHeapSpaceStatistics
Ottieni un utilizzo dettagliato della memoria heap v8
1static Array profiler.getHeapSpaceStatistics();
risultato di ritorno:
- Array, restituisce l'utilizzo dettagliato della memoria heap
getHeapStatistics
Ottieni statistiche sull'utilizzo della memoria heap v8
1static Object profiler.getHeapStatistics();
risultato di ritorno:
- Object, restituisce le statistiche sull'utilizzo della memoria dell'heap
saveSnapshot
Salva uno snapshot dell'heap in base al nome specificato
1static profiler.saveSnapshot(String fname);
Parametri di chiamata:
- fname: stringa, nome dell'istantanea dell'heap
loadSnapshot
Legge uno snapshot 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, restituisce lo snapshot dell'heap di lettura
takeSnapshot
Ottieni lo snapshot dell'heap del nodo all'ora corrente Lo snapshot dell'heap registra lo stato dell'heap JS al momento corrente
1static HeapSnapshot profiler.takeSnapshot();
risultato di ritorno:
- HeapSnapshot, restituisce lo snapshot delle informazioni sull'heap acquisito
diff
Esegui la funzione specificata e confronta le modifiche nell'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: String, il nome del file di archiviazione del registro specificato
- time: Numero intero, specificare il tempo di campionamento, il valore predefinito è 1 minuto
- interval: numero intero, specificare l'intervallo di tempo, il valore predefinito è 100 millisecondi
risultato di ritorno:
- Timer, restituisce il timer di campionamento, è possibile interrompere il campionamento in anticipo tramite il metodo Clear
costante
Node_Hidden
Nodi nascosti, che possono essere filtrati quando vengono 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 nell'heap
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
stringa divisa
1const profiler.Node_SlicedString = 11;
Node_Symbol
Simboli (ES6)
1const profiler.Node_Symbol = 12;
Node_SimdValue
valori SIMD ordinati in un heap (ES7)
1const profiler.Node_SimdValue = 13;
Edge_ContextVariable
variabili nelle funzioni
1const profiler.Edge_ContextVariable = 0;
Edge_Element
elementi nella matrice
1const profiler.Edge_Element = 1;
Edge_Property
proprietà dell'oggetto indicato
1const profiler.Edge_Property = 2;
Edge_Internal
Collegamenti JS inaccessibili
1const profiler.Edge_Internal = 3;
Edge_Hidden
Indica i nodi che devono calcolare in anticipo la dimensione dello spazio
1const profiler.Edge_Hidden = 4;
Edge_Shortcut
Indica un nodo la cui dimensione non può essere calcolata in anticipo
1const profiler.Edge_Shortcut = 5;
Edge_Weak
Un riferimento debole (ignorato da GC)
1const profiler.Edge_Weak = 6;