Módulo módulo básico

Perfilador de módulos

Módulo perfilador de memoria

Instrucciones:

1
var profiler = require('profiler');

Función estática

saveSnapshot

Guarde una instantánea de montón de acuerdo con el nombre especificado

1
static profiler.saveSnapshot(String fname);

Parámetros de llamada:

  • fname: Cadena, nombre de la instantánea del montón

loadSnapshot

Leer una instantánea de montón de acuerdo con el nombre especificado

1
static HeapSnapshot profiler.loadSnapshot(String fname);

Parámetros de llamada:

  • fname: Cadena, nombre de la instantánea del montón

Devolver resultado:

  • HeapSnapshot, Devuelve la instantánea del montón de lectura

takeSnapshot

Obtenga la instantánea del montón del nodo de tiempo actual, la instantánea del montón registra el estado del montón JS en el momento actual

1
static HeapSnapshot profiler.takeSnapshot();

Devolver resultado:

  • HeapSnapshot, Regrese a la instantánea de información del montón obtenida

diff

Ejecute la función dada y compare los cambios del montón v8 antes y después de la ejecución

1
static Object profiler.diff(Function test);

Parámetros de llamada:

  • test: Función, dada la función a probar

Devolver resultado:

  • Object, Devuelve el resultado de la comparación

start

Iniciar un registro de muestreo de estado en ejecución

1 2 3
static Timer profiler.start(String fname, Integer time = 60000, Integer interval = 100);

Parámetros de llamada:

  • fname: Cadena, nombre de archivo de almacenamiento de registro dado
  • time: Entero, especifique el tiempo de muestreo, el valor predeterminado es 1 minuto
  • interval: Entero, especifique el intervalo de tiempo, el valor predeterminado es 100 milisegundos

Devolver resultado:

  • Timer, Regrese al temporizador de muestreo, puede detener el muestreo por adelantado a través del método claro

constante

Node_Hidden

Nodos ocultos, que se pueden filtrar cuando se muestran al usuario

1
const profiler.Node_Hidden = 0;

Node_Array

Formación

1
const profiler.Node_Array = 1;

Node_String

Cuerda

1
const profiler.Node_String = 2;

Node_Object

Objetos JS (excepto cadenas y matrices)

1
const profiler.Node_Object = 3;

Node_Code

Código compilado

1
const profiler.Node_Code = 4;

Node_Closure

Cierre de función

1
const profiler.Node_Closure = 5;

Node_RegExp

Expresión regular

1
const profiler.Node_RegExp = 6;

Node_HeapNumber

Números ordenados en la pila

1
const profiler.Node_HeapNumber = 7;

Node_Native

Objetos nativos (no en el montón v8)

1
const profiler.Node_Native = 8;

Node_Synthetic

Objeto sintético

1
const profiler.Node_Synthetic = 9;

Node_ConsString

Cadena concatenada

1
const profiler.Node_ConsString = 10;

Node_SlicedString

Cuerda partida

1
const profiler.Node_SlicedString = 11;

Node_Symbol

Símbolo (ES6)

1
const profiler.Node_Symbol = 12;

Node_SimdValue

Valor de SIMD ordenado en el montón (ES7)

1
const profiler.Node_SimdValue = 13;

Edge_ContextVariable

Variables en la función

1
const profiler.Edge_ContextVariable = 0;

Edge_Element

Elementos de la matriz

1
const profiler.Edge_Element = 1;

Edge_Property

Propiedades del objeto nombrado

1
const profiler.Edge_Property = 2;

Edge_Internal

Enlace inaccesible de JS

1
const profiler.Edge_Internal = 3;

Edge_Hidden

Señale el nodo donde el tamaño del espacio debe calcularse de antemano

1
const profiler.Edge_Hidden = 4;

Edge_Shortcut

Apunta a un nodo cuyo tamaño de espacio no se puede calcular de antemano

1
const profiler.Edge_Shortcut = 5;

Edge_Weak

Una referencia débil (ignorada por GC)

1
const profiler.Edge_Weak = 6;