Re[3]: MVU F# как избежать утечки памяти
От: Sinclair Россия https://github.com/evilguest/
Дата: 18.10.23 13:07
Оценка:
Здравствуйте, Serginio1, Вы писали:
S> Да помню там для функции вызова нужно было передавать статическую функцию. А в Delphi все было на объектах. Они передавали ссылку на память динамически созданную в которой self записывался в регистр и вызывалась реальная функция объекта.
Очень, очень вряд ли. В более-менее все места WinAPI, где используются callback-и, есть возможность передать пользовательский параметр, и его передадут при обратном вызове.
Поэтому примерно все ООП-шные библиотеки туда передают адрес объекта. Callback обрабатывается статической функцией, которая достаёт из аргумента адрес объекта, и уже на нём вызывает виртуальный метод.
Но я, конечно же, всего знать не могу, потому было бы интересно на такое посмотреть. Особенно с учётом NX-флагов и прочей современщины.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.