HandleHeap

public final class HandleHeap
extends ChunkHandler

java.lang.Object
com.android.tradefed.device.server.jdwp.JdwpInterceptor
com.android.tradefed.device.server.jdwp.chunkhandler.ChunkHandler
com.android.tradefed.device.server.jdwp.chunkhandler.HandleHeap


Обработка обновлений состояния кучи.

Краткое содержание

Константы

int HPIF_WHEN_EVERY_GC

int HPIF_WHEN_NEVER

int HPIF_WHEN_NEXT_GC

int HPIF_WHEN_NOW

int WHAT_MERGE

int WHAT_OBJ

int WHEN_DISABLE

int WHEN_GC

Поля

public static final int CHUNK_HPDS

public static final int CHUNK_HPDU

public static final int CHUNK_HPEN

public static final int CHUNK_HPGC

public static final int CHUNK_HPIF

public static final int CHUNK_HPSG

public static final int CHUNK_HPST

public static final int CHUNK_REAE

public static final int CHUNK_REAL

public static final int CHUNK_REAQ

Публичные методы

void clientDisconnected ( ClientImpl client)

Клиент ушел.

void clientReady ( ClientImpl client)

Клиент готов.

void handleChunk ( ClientImpl client, int type, ByteBuffer data, boolean isReply, int msgId)

Точка входа обработчика фрагментов.

static void register ( MonitorThread mt)

Зарегистрируйтесь для получения пакетов, которые мы ожидаем получить от клиента.

static void sendHPDS ( ClientImpl client)

Отправляет клиенту запрос HPDS.

static void sendHPDU ( ClientImpl client, String fileName)

Отправляет клиенту запрос HPDU.

static void sendHPGC ( ClientImpl client)

Отправляет клиенту запрос HPGC.

static void sendHPIF ( ClientImpl client, int when)

Отправьте клиенту запрос HPIF (HeaP InFo).

static void sendHPSG ( ClientImpl client, int when, int what)

Отправляет клиенту запрос HPSG (HeaP SeGment).

static void sendREAE ( ClientImpl client, boolean enable)

Отправляет клиенту запрос REAE (REcent Allocation Enable).

static void sendREAL ( ClientImpl client)

Отправляет клиенту РЕАЛЬНЫЙ (последний) запрос на выделение ресурсов.

static void sendREAQ ( ClientImpl client)

Отправляет клиенту запрос REAQ (запрос на недавнее распределение).

Константы

HPIF_WHEN_EVERY_GC

public static final int HPIF_WHEN_EVERY_GC

Постоянное значение: 3 (0x00000003)

HPIF_WHEN_NEVER

public static final int HPIF_WHEN_NEVER

Постоянное значение: 0 (0x00000000)

HPIF_WHEN_NEXT_GC

public static final int HPIF_WHEN_NEXT_GC

Постоянное значение: 2 (0x00000002)

HPIF_WHEN_NOW

public static final int HPIF_WHEN_NOW

Постоянное значение: 1 (0x00000001)

WHAT_MERGE

public static final int WHAT_MERGE

Постоянное значение: 0 (0x00000000)

ЧТО_ОБЪЕКТ

public static final int WHAT_OBJ

Постоянное значение: 1 (0x00000001)

КОГДА_ОТКЛЮЧИТЬ

public static final int WHEN_DISABLE

Постоянное значение: 0 (0x00000000)

WHEN_GC

public static final int WHEN_GC

Постоянное значение: 1 (0x00000001)

Поля

CHUNK_HPDS

public static final int CHUNK_HPDS

CHUNK_HPDU

public static final int CHUNK_HPDU

CHUNK_HPEN

public static final int CHUNK_HPEN

CHUNK_HPGC

public static final int CHUNK_HPGC

CHUNK_HPIF

public static final int CHUNK_HPIF

CHUNK_HPSG

public static final int CHUNK_HPSG

CHUNK_HPST

public static final int CHUNK_HPST

CHUNK_REAE

public static final int CHUNK_REAE

CHUNK_REAL

public static final int CHUNK_REAL

CHUNK_REAQ

public static final int CHUNK_REAQ

Публичные методы

клиентОтключен

public void clientDisconnected (ClientImpl client)

Клиент ушел.

Параметры
client ClientImpl

clientReady

public void clientReady (ClientImpl client)

Клиент готов.

Параметры
client ClientImpl

handleChunk

public void handleChunk (ClientImpl client, 
                int type, 
                ByteBuffer data, 
                boolean isReply, 
                int msgId)

Точка входа обработчика фрагментов.

Параметры
client ClientImpl

type int

data ByteBuffer

isReply boolean

msgId int

регистр

public static void register (MonitorThread mt)

Зарегистрируйтесь для получения пакетов, которые мы ожидаем получить от клиента.

Параметры
mt MonitorThread

sendHPDS

public static void sendHPDS (ClientImpl client)

Отправляет клиенту запрос HPDS.

После завершения создания дампа кучи мы получим ответ HPDS. В случае сбоя мы получим общий ответ об ошибке.

Это обходится устройству дороже, чем HPDU, поскольку весь дамп кучи хранится в оперативной памяти, а не выгружается во временный файл. С другой стороны, разрешение на запись на /sdcard не требуется.

Параметры
client ClientImpl

sendHPDU

public static void sendHPDU (ClientImpl client, 
                String fileName)

Отправляет клиенту запрос HPDU.

После завершения создания дампа кучи мы получим ответ HPDU. В случае сбоя мы получим общий ответ об ошибке.

Параметры
client ClientImpl

fileName String : имя выходного файла (на устройстве)

sendHPGC

public static void sendHPGC (ClientImpl client)

Отправляет клиенту запрос HPGC.

Параметры
client ClientImpl

sendHPIF

public static void sendHPIF (ClientImpl client, 
                int when)

Отправьте клиенту запрос HPIF (HeaP InFo).

Параметры
client ClientImpl

when int

sendHPSG

public static void sendHPSG (ClientImpl client, 
                int when, 
                int what)

Отправляет клиенту запрос HPSG (HeaP SeGment).

Параметры
client ClientImpl

when int

what int

sendREAE

public static void sendREAE (ClientImpl client, 
                boolean enable)

Отправляет клиенту запрос REAE (REcent Allocation Enable).

Параметры
client ClientImpl

enable boolean

sendREAL

public static void sendREAL (ClientImpl client)

Отправляет клиенту РЕАЛЬНЫЙ (последний) запрос на выделение ресурсов.

Параметры
client ClientImpl

sendREAQ

public static void sendREAQ (ClientImpl client)

Отправляет клиенту запрос REAQ (запрос на недавнее распределение).

Параметры
client ClientImpl