Class: MemoryProfiler

MemoryProfiler


new MemoryProfiler(projectName)

Parameters:
Name Type Description
projectName string

O nome do projeto de profiling. Um arquivo IDO com esse nome, adicionado do sufixo "_PROFILING" será utilizado pelo objeto.

Example
var profiler = new ngin.debug.HeapProfiler("projectX");
var sid = profiler.newSession("2553340F073A24");
var profileId = profiler.profile();
profiler.listObjects("DataSet");

Methods


getLastProfilingId_()

Retorna o último identificador de profiling utilizado

Returns:

o número do último profiling utilizado, ou 0, se não há nenhum registro

Type
number

getLivingGenerations( [profiling_id])

Parameters:
Name Type Argument Description
profiling_id number <optional>

id do profiling analisado. Se não for informado, o profiling default é utilizado.

Returns:

tabela com as gerações de objetos vivas numa determinada medição

Type
DataSet

getRefChain(oid)

Retorna um dataset com a cadeia de referências para um determinado objeto. Com esse método é possível saber qual objeto está provocando o memory leak, referenciando outro objeto desnecessariamente. Se um objeto é referenciado por mais de um objeto, apenas um dos objetos que referenciam é informado.

Parameters:
Name Type Description
oid string

Id de identificação do objeto

Returns:
Type
DataSet

listObjects( [className])

Parameters:
Name Type Argument Description
className string <optional>

Classe a qual pertence os objetos. Se não for informada, são retornados todos os objetos, independente de qual classe pertençam.

Returns:

tabela com os objetos vivos na medição corrente

Type
DataSet

listProfilings()

Returns:

Um Dataset com todas os profiles de uma determinada sessão var profiler = new ngin.debug.HeapProfiler("projectX"); var sid = 1; // from a value returned from a previous call to profiler.newSession(). profiler.setSession(sid); var ds = profiler.listProfilings();

Type
DataSet

listSessions()

Returns:

Dataset com todas as sessões de profiling armazenadas no arquivo do projeto

Type
DataSet

newSession(partialSid)

Cria uma nova sessão de profiling.

Parameters:
Name Type Description
partialSid string

o Id da sessão javascript, na forma reduzida, assim como é apresentado na tela de sessões do Manage

Returns:

O id de uma nova sessão

Type
number
Example
var profiler = new ngin.debug.HeapProfiler("projectX");
var sid = profiler.newSession("2553340F073A24");
var profileId = profiler.profile();

profile()

Adiciona a sessão de profiling uma medição de consumo de memória atual

Returns:

Id da medição

Type
Number
Example
var profiler = new ngin.debug.HeapProfiler("projectX");
var sid = profiler.newSession();
var profileId = profiler.profile();

removeSession(sessionId)

Remove todas os registros de uma determinada sessão

Parameters:
Name Type Description
sessionId number

var profiler = new ngin.debug.HeapProfiler("projectX"); var sid = 1; // from a value returned from a previous call to profiler.newSession(). profiler.removeSession(sid);


setDefaultProfiling(id)

Seleciona a medição que é usada pelas funções de análise

Parameters:
Name Type Description
id string

Id da medição ativa

Example
var profiler = new ngin.debug.HeapProfiler("projectX");
var sid = 1; // from the returned value of a previous call to profiler.newSession().
profiler.setSession(sid);
var profileId = 2; // from the returned value of a previous call to profiler.profile();
profiler.setDefaultProfiling(profileId);
profiler.listObjects();

setSession(id)

Define a sessão javascript que está sendo mensurada

Parameters:
Name Type Description
id string

O identificador de sessão atual

Example
var profiler = new ngin.debug.HeapProfiler("projectX");
var sid = 1; // from a value returned from a previous call to profiler.newSession().
profiler.setSession(sid);