Можно ли распознать диспетчер кучи из блока памяти?

У меня есть приложение, которое состоит из хост-программы и нескольких плагинов. Плагины реализованы в dll, которые можно динамически загружать и выгружать. Код плагинов (внутри dll) выделяет память для объектов и передает указатели в хост-программу. Эти объекты размещены в куче DLL, и нет никакого способа изменить интерфейс, чтобы использовать специализированную функцию выделения памяти.

Есть ли способ для хост-программы определить, на каком диспетчере кучи выделен объект? Я хочу реализовать какой-то подсчет ссылок для DLL. Пока хост-программа все еще использует память из dll, dll не может быть выгружена. Это означает, что я хотел бы отследить от программы хоста, кто (какой плагин) выделил блок памяти (объекты, которые хранятся в различных списках внутри хоста). Текущий интерфейс включает в себя вызов для выгрузки DLL. Этот вызов следует запланировать на выгрузку, но выполнить его можно только после того, как хост завершит использование памяти.

Спасибо за любые предложения.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]