GetRuntimeObjectListResult GetRuntimeObjectList(OdId tObject)
tObject. Моникёр объекта среды разработки, для которого запущен процесс отладки.
Операция GetRuntimeObjectList получает списка объектов, находящихся в памяти во время отладки.
Для выполнения операции укажите в поле tObject моникёр объекта, который был запущен на отладку.
Результатом операции будет список объектов, находящихся в памяти, а также информация о них.
Ниже приведён пример получения списка объектов, находящихся в памяти компьютера во время отладки кода. В запросе передаётся моникёр объекта, находящегося в режиме отладки. В ответе возвращается полученный список объектов и информация о них.
{
"GetRuntimeObjectList" :
{
"tObject" :
{
"id" : "PBIOBPCAEDCOFOAEFFEFLOBMFDKGKIMENIGAAFCLHCNIIEAC!M!305559"
}
}
}
{
"GetRuntimeObjectListResult" :
{
"runtimeObjects" :
{
"it" :
[
{
"className" : "IMetabase",
"refCount" : "1",
"address" : "$ 1FE2F2016D0",
"comObject" : "$ 1FE303232E0",
"moduleID" : "M_DEBUG_SIMPLE",
"line" : "8"
},
{
"className" : "ArrayList",
"refCount" : "0",
"address" : "$ 1FE2F201630",
"comObject" : "$ 1FE4E1960B0",
"moduleID" : "M_DEBUG_SIMPLE",
"line" : "8"
},
{
"className" : "IArrayList",
"refCount" : "1",
"address" : "$ 1FE2F201770",
"comObject" : "$ 1FE4E1960B0",
"moduleID" : "M_DEBUG_SIMPLE",
"line" : "9"
},
{
"className" : "ICultureInfo",
"refCount" : "1",
"address" : "$ 1FE2F201810",
"comObject" : "$ 1FE3061F3A0",
"moduleID" : "M_DEBUG_SIMPLE",
"line" : "9"
}
]
}
}
}
public static GetRuntimeObjectListResult GetRuntimeObjectList(MbId mb, string modId)
{
var somClient = new SomPortTypeClient(); // Прокси-объект для выполнения операций
// Параметры выполнения операции
var tGet = new GetRuntimeObjectList()
{
// Формирование моникёра объекта
tObject = new OdId() { id = mb.id + "!" + FindObjectById(mb, modId).k }
};
// Получить объекты в памяти
var result = somClient.GetRuntimeObjectList(tGet);
return result;
}
См. также: