Módulo base del módulo

Módulo perfilador

Módulo perfilador de memoria

Cómo usar:

1
var profiler = require('profiler');

Función estática

saveSnapshot

Guardar una instantánea del montón 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 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

Devuelve el resultado:

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

takeSnapshot

Obtenga una instantánea del montón del nodo de tiempo actual. La instantánea del montón registra el estado actual del montón JS

1
static HeapSnapshot profiler.takeSnapshot();

Devuelve el resultado:

  • HeapSnapshot , devuelve una instantánea de la información del montón obtenida

diff

Ejecute la función dada y compare los cambios en el 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

Devuelve el resultado:

  • Object , devuelve el resultado de la comparación.

start

Iniciar un registro de muestreo de estado de ejecución

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

Parámetros de llamada:

  • fname : String, 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 tiempo de intervalo, predeterminado 100 milisegundos

Devuelve el resultado:

  • Timer , devuelve el temporizador de muestreo, que puede detenerse por adelantado mediante el 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

Matriz

1
const profiler.Node_Array = 1;

Node_String

Cadena

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

Función de cierre

1
const profiler.Node_Closure = 5;

Node_RegExp

Expresión regular

1
const profiler.Node_RegExp = 6;

Node_HeapNumber

Números ordenados en un montón

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

Cuerdas cosidas

1
const profiler.Node_ConsString = 10;

Node_SlicedString

Cadena dividida

1
const profiler.Node_SlicedString = 11;

Node_Symbol

Símbolo (ES6)

1
const profiler.Node_Symbol = 12;

Node_SimdValue

Valores SIMD ordenados en el montón (ES7)

1
const profiler.Node_SimdValue = 13;

Edge_ContextVariable

Variables en funciones

1
const profiler.Edge_ContextVariable = 0;

Edge_Element

Elementos en una matriz

1
const profiler.Edge_Element = 1;

Edge_Property

Propiedades de los objetos nombrados.

1
const profiler.Edge_Property = 2;

Edge_Internal

Enlace inaccesible JS

1
const profiler.Edge_Internal = 3;

Edge_Hidden

Señale el nodo que necesita calcular el tamaño del espacio por adelantado

1
const profiler.Edge_Hidden = 4;

Edge_Shortcut

Señale un nodo cuyo espacio no pueda calcularse por adelantado

1
const profiler.Edge_Shortcut = 5;

Edge_Weak

Una referencia débil (ignorada por el GC)

1
const profiler.Edge_Weak = 6;