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 : String, 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 : String, 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 , devuelve una instantánea de la 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 del 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 del intervalo, el valor predeterminado es 100 milisegundos

Devolver resultado:

  • Timer , devuelve el temporizador de muestreo, puede detener el muestreo por adelantado mediante el método claro

constante

Node_Hidden

Nodos ocultos, que se pueden filtrar cuando se muestran a los usuarios

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

Cadena 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 funciones

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 cuyo tamaño de espacio debe calcularse de antemano

1
const profiler.Edge_Hidden = 4;

Edge_Shortcut

Apunta a un nodo cuyo 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;