Modulo modulo base

profilatore del modulo

modulo profiler di memoria

Istruzioni:

1
var profiler = require('profiler');

funzione statica

getHeapCodeStatistics

get = statistiche per il codice nell'heap v8 e i relativi metadati

1
static Object profiler.getHeapCodeStatistics();

risultato di ritorno:

  • Object, restituisce le statistiche dei metadati

getHeapSpaceStatistics

Ottieni un utilizzo dettagliato della memoria heap v8

1
static Array profiler.getHeapSpaceStatistics();

risultato di ritorno:

  • Array, restituisce l'utilizzo dettagliato della memoria heap

getHeapStatistics

Ottieni statistiche sull'utilizzo della memoria heap v8

1
static 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

1
static 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

1
static 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

1
static 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

1
static 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 3
static 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

1
const profiler.Node_Hidden = 0;

Node_Array

vettore

1
const profiler.Node_Array = 1;

Node_String

corda

1
const profiler.Node_String = 2;

Node_Object

Oggetti JS (eccetto stringhe e array)

1
const profiler.Node_Object = 3;

Node_Code

codice compilato

1
const profiler.Node_Code = 4;

Node_Closure

chiusura della funzione

1
const profiler.Node_Closure = 5;

Node_RegExp

espressione regolare

1
const profiler.Node_RegExp = 6;

Node_HeapNumber

numeri ordinati nell'heap

1
const profiler.Node_HeapNumber = 7;

Node_Native

Oggetti nativi (non nell'heap v8)

1
const profiler.Node_Native = 8;

Node_Synthetic

Oggetto sintetico

1
const profiler.Node_Synthetic = 9;

Node_ConsString

stringa concatenata

1
const profiler.Node_ConsString = 10;

Node_SlicedString

stringa divisa

1
const profiler.Node_SlicedString = 11;

Node_Symbol

Simboli (ES6)

1
const profiler.Node_Symbol = 12;

Node_SimdValue

valori SIMD ordinati in un heap (ES7)

1
const profiler.Node_SimdValue = 13;

Edge_ContextVariable

variabili nelle funzioni

1
const profiler.Edge_ContextVariable = 0;

Edge_Element

elementi nella matrice

1
const profiler.Edge_Element = 1;

Edge_Property

proprietà dell'oggetto indicato

1
const profiler.Edge_Property = 2;

Edge_Internal

Collegamenti JS inaccessibili

1
const profiler.Edge_Internal = 3;

Edge_Hidden

Indica i nodi che devono calcolare in anticipo la dimensione dello spazio

1
const profiler.Edge_Hidden = 4;

Edge_Shortcut

Indica un nodo la cui dimensione non può essere calcolata in anticipo

1
const profiler.Edge_Shortcut = 5;

Edge_Weak

Un riferimento debole (ignorato da GC)

1
const profiler.Edge_Weak = 6;