perfilador de módulos
Módulo perfilador de memoria
Instrucións:
1var profiler = require('profiler');
función estática
getHeapCodeStatistics
Obter = estatísticas sobre o código no montón v8 e os seus metadatos
1static Object profiler.getHeapCodeStatistics();
Resultados de devolución:
- Object, devolve información estatística dos metadatos
getHeapSpaceStatistics
Obtén o uso detallado da memoria heap v8
1static Array profiler.getHeapSpaceStatistics();
Resultados de devolución:
- Array, devolve o uso detallado da memoria heap
getHeapStatistics
Obter estatísticas de uso da memoria heap v8
1static Object profiler.getHeapStatistics();
Resultados de devolución:
- Object, devolve estatísticas sobre o uso da memoria heap
saveSnapshot
Garda unha instantánea do montón co nome especificado
1static profiler.saveSnapshot(String fname);
Parámetros de chamada:
- fname: Cadea, nome da instantánea do montón
loadSnapshot
Le unha instantánea do montón baseada no nome especificado
1static HeapSnapshot profiler.loadSnapshot(String fname);
Parámetros de chamada:
- fname: Cadea, nome da instantánea do montón
Resultados de devolución:
- HeapSnapshot, devolve a instantánea do montón lido
takeSnapshot
Obtén a instantánea do montón do nodo de tempo actual. A instantánea do montón rexistra o estado do montón JS no momento actual.
1static HeapSnapshot profiler.takeSnapshot();
Resultados de devolución:
- HeapSnapshot, devolve a instantánea de información do montón obtida
diff
Execute a función dada e compare os cambios no montón v8 antes e despois da execución
1static Object profiler.diff(Function test);
Parámetros de chamada:
- test: Función, dada a función que se vai probar
Resultados de devolución:
- Object, devolve o resultado da comparación
start
Inicia un rexistro de mostraxe de estado en execución
1
2
3static Timer profiler.start(String fname,
Integer time = 60000,
Integer interval = 100);
Parámetros de chamada:
- fname: Cadea, dado o nome do ficheiro de almacenamento de rexistro
- time: Número enteiro, especifica o tempo de mostraxe, o valor predeterminado é 1 minuto
- interval: Número enteiro, especifique o tempo de intervalo, o valor predeterminado é 100 milisegundos
Resultados de devolución:
- Timer, devolve o temporizador de mostraxe, podes deixar de mostraxe antes a través do método claro
constante
Node_Hidden
Nodos ocultos que se poden filtrar cando se mostran ao usuario
1const profiler.Node_Hidden = 0;
Node_Array
matriz
1const profiler.Node_Array = 1;
Node_String
corda
1const profiler.Node_String = 2;
Node_Object
Obxectos JS (excepto cadeas e matrices)
1const profiler.Node_Object = 3;
Node_Code
código compilado
1const profiler.Node_Code = 4;
Node_Closure
peche da función
1const profiler.Node_Closure = 5;
Node_RegExp
expresión regular
1const profiler.Node_RegExp = 6;
Node_HeapNumber
Números ordenados nunha pila
1const profiler.Node_HeapNumber = 7;
Node_Native
Obxecto nativo (montón non v8)
1const profiler.Node_Native = 8;
Node_Synthetic
Obxecto sintético
1const profiler.Node_Synthetic = 9;
Node_ConsString
cadeas concatenadas
1const profiler.Node_ConsString = 10;
Node_SlicedString
corda dividida
1const profiler.Node_SlicedString = 11;
Node_Symbol
Símbolos (ES6)
1const profiler.Node_Symbol = 12;
Node_SimdValue
Valores SIMD ordenados no montón (ES7)
1const profiler.Node_SimdValue = 13;
Edge_ContextVariable
variables nas funcións
1const profiler.Edge_ContextVariable = 0;
Edge_Element
elementos en matriz
1const profiler.Edge_Element = 1;
Edge_Property
Propiedades dos obxectos nomeados
1const profiler.Edge_Property = 2;
Edge_Internal
JS non pode introducir a ligazón
1const profiler.Edge_Internal = 3;
Edge_Hidden
Sinalle o nodo cuxo tamaño de espazo debe calcularse con antelación
1const profiler.Edge_Hidden = 4;
Edge_Shortcut
Apunta a un nodo cuxo tamaño de espazo non se pode calcular de antemán
1const profiler.Edge_Shortcut = 5;
Edge_Weak
unha referencia débil (ignorada polo GC)
1const profiler.Edge_Weak = 6;