Modulo Modulo base

Profiler del modulo

Modulo profiler di memoria

Istruzioni:

1
var profiler = require('profiler');

Funzione statica

saveSnapshot

Salvare un'istantanea dell'heap in base al nome specificato

1
static profiler.saveSnapshot(String fname);

Parametri di chiamata:

  • fname : stringa, nome fname dell'heap

loadSnapshot

Leggere un'istantanea dell'heap in base al nome specificato

1
static HeapSnapshot profiler.loadSnapshot(String fname);

Parametri di chiamata:

  • fname : stringa, nome fname dell'heap

Risultato di ritorno:


takeSnapshot

Ottieni un'istantanea dell'heap del nodo al momento attuale, che registra lo stato dell'heap JS al momento attuale.

1
static HeapSnapshot profiler.takeSnapshot();

Risultato di ritorno:

  • HeapSnapshot , restituisce un'istantanea delle informazioni heap ottenute

diff

Eseguire la funzione specificata e confrontare la modifica dell'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, dato il nome del file di archiviazione del registro
  • time : intero, specificare il tempo di campionamento, predefinito 1 minuto
  • interval : intero, l'intervallo specificato, il valore predefinito è 100 millisecondi

Risultato di ritorno:

  • Timer , tornare al timer di campionamento, è possibile interrompere in anticipo il campionamento tramite il metodo di cancellazione

costante

Node_Hidden

Nodi nascosti, che possono essere filtrati quando 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 (tranne stringhe e matrici)

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

Oggetti sintetici

1
const profiler.Node_Synthetic = 9;

Node_ConsString

Stringhe concatenate

1
const profiler.Node_ConsString = 10;

Node_SlicedString

Dividi stringa

1
const profiler.Node_SlicedString = 11;

Node_Symbol

Simbolo (ES6)

1
const profiler.Node_Symbol = 12;

Node_SimdValue

Valori SIMD ordinati nell'heap (ES7)

1
const profiler.Node_SimdValue = 13;

Edge_ContextVariable

Variabili nella funzione

1
const profiler.Edge_ContextVariable = 0;

Edge_Element

Elementi nella matrice

1
const profiler.Edge_Element = 1;

Edge_Property

Proprietà degli oggetti con nome

1
const profiler.Edge_Property = 2;

Edge_Internal

Collegamento inaccessibile JS

1
const profiler.Edge_Internal = 3;

Edge_Hidden

Scegliere il nodo che deve calcolare in anticipo la dimensione dello spazio

1
const profiler.Edge_Hidden = 4;

Edge_Shortcut

Scegliere un nodo la cui dimensione dello spazio 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;