Размеры Объектов (и Переменных) При Работе, Как Узнать?

  • Автор темы Автор темы savl
  • Дата начала Дата начала

savl

Lotus Team
28.10.2011
2 620
311
BIT
593
Тут не столько проблема, сколько любопытство.
Можно ли узнать сколько занимают в памяти объекты, которые используются на данный момент?
Скажем объект NotesView или NotesDatabase или NotesDocument, ну и соответственно самописные классы.
И если можно то как?
Логирование через notes.ini настройку, которая все потоки пишет в файл?
 
Len ( { stringExpr | variantExpr | numericExpr | typeName } )

не то?
 
То для типов, выводит сумму байт всех полей типа, то есть то что сделано через Type.
Для класса - ошибка.
 
lsi_info(50) = lotusscript memory allocated
lsi_info(51) = lotusscript memory allocated from os
lsi_info(52) = lotusscript blocks used

не совсем то, но все же.

а так, судя по всему, нужно будет для классов писать свой метод sizeOf.
 
sizeof, да, типа того. Для своих понятно да... надо будет.
А для стандартных лотусовых интересно как...
 
#include <osmem.h>

DWORD LNPUBLIC OSMemoryGetSize(
MEMHANDLE handle);

Что нить типа
Declare Private Function OSMemoryGetSize Lib "NNOTES" Alias "OSMemoryGetSize" _
( Byval hM As Long) As Long

Попробуй ;)

UPD: 6.5.4 на OSMemoryGetSize(doc.Handle) - Красный прямоугольник смерти )))))
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!