profilatore del modulo
Modulo profilatore di memoria
Istruzioni:
1var profiler = require('profiler');
funzione statica
getHeapCodeStatistics
Get = statistiche sul codice nell'heap v8 e sui relativi metadati
1static Object profiler.getHeapCodeStatistics();
Risultati restituiti:
- Object, restituisce informazioni statistiche sui metadati
getHeapSpaceStatistics
Ottieni l'utilizzo dettagliato della memoria heap v8
1static Array profiler.getHeapSpaceStatistics();
Risultati restituiti:
- Array, restituisce l'utilizzo dettagliato della memoria heap
getHeapStatistics
Ottieni statistiche sull'utilizzo della memoria heap v8
1static Object profiler.getHeapStatistics();
Risultati restituiti:
- Object, restituisce statistiche sull'utilizzo della memoria heap
saveSnapshot
Salva uno snapshot dell'heap con il nome specificato
1static profiler.saveSnapshot(String fname);
Parametri di chiamata:
- fname: stringa, nome dell'istantanea 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 heap
Risultati restituiti:
- HeapSnapshot, restituisce lo snapshot dell'heap di lettura
takeSnapshot
Ottieni lo snapshot dell'heap del nodo temporale corrente. Lo snapshot dell'heap registra lo stato dell'heap JS nel momento corrente.
1static HeapSnapshot profiler.takeSnapshot();
Risultati restituiti:
- HeapSnapshot, restituisce lo snapshot delle informazioni sull'heap ottenuto
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
Risultati restituiti:
- Object, restituisce il risultato del confronto
start
Avvia un registro di campionamento dello stato di 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: Numero intero, specifica il tempo di campionamento, il valore predefinito è 1 minuto
- interval: Numero intero, specificare l'intervallo di tempo, il valore predefinito è 100 millisecondi
Risultati restituiti:
- Timer, restituisce il timer di campionamento, è possibile interrompere anticipatamente il campionamento tramite il metodo Cancella
costante
Node_Hidden
Nodi nascosti che possono essere filtrati quando visualizzati all'utente
1const profiler.Node_Hidden = 0;
Node_Array
matrice
1const profiler.Node_Array = 1;
Node_String
corda
1const profiler.Node_String = 2;
Node_Object
Oggetti JS (tranne 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 in un mucchio
1const profiler.Node_HeapNumber = 7;
Node_Native
Oggetto nativo (heap non v8)
1const profiler.Node_Native = 8;
Node_Synthetic
Oggetto sintetico
1const profiler.Node_Synthetic = 9;
Node_ConsString
stringhe concatenate
1const profiler.Node_ConsString = 10;
Node_SlicedString
corda divisa
1const profiler.Node_SlicedString = 11;
Node_Symbol
Simboli (ES6)
1const profiler.Node_Symbol = 12;
Node_SimdValue
Valori SIMD ordinati nell'heap (ES7)
1const profiler.Node_SimdValue = 13;
Edge_ContextVariable
variabili nelle funzioni
1const profiler.Edge_ContextVariable = 0;
Edge_Element
elementi nell'array
1const profiler.Edge_Element = 1;
Edge_Property
Proprietà degli oggetti con nome
1const profiler.Edge_Property = 2;
Edge_Internal
JS non può accedere al collegamento
1const profiler.Edge_Internal = 3;
Edge_Hidden
Punta al nodo la cui dimensione dello spazio deve essere calcolata in anticipo
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;