Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Разделение памяти между модулями, ShareMM итп
|
|||
|---|---|---|---|
|
#18+
Всем доброго дня, разбираюсь с темой увеличения памяти через {$SETPEFLAGS $20} или {$SETPEFLAGS IMAGE_FILE_LARGE_ADDRESS_AWARE} в x32 приложениях и мучает вопрос. Можно ли заставить Delphi в разных модулях (dll, ocx итп) совместно используемых в приложении использовать разные менеджеры памяти и применять опцию {$SETPEFLAGS $20} только в рамках одного из модулей? Тут не совсем в тему но в нужную сторону кое что описано но конечного понимания пока не возникло. Хорошо бы что то почитать на эту тему. Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2021, 15:54 |
|
||
|
Разделение памяти между модулями, ShareMM итп
|
|||
|---|---|---|---|
|
#18+
hlopotun Можно ли заставить Delphi в разных модулях (dll, ocx итп) совместно используемых в приложении использовать разные менеджеры памяти и применять опцию {$SETPEFLAGS $20} только в рамках одного из модулей? Посмотрите ShareMem.pas: он используети borlndmm.dll (или что там сейчас), если вы его поменяете (назовете MyMM.pas и измените названние длл, в проект включать первым), то может сработать, но взаимодействие между модулями с разными ММ придется делать с учетом ограничений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2021, 16:15 |
|
||
|
Разделение памяти между модулями, ShareMM итп
|
|||
|---|---|---|---|
|
#18+
тот тут вроде понятно расписано ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2021, 16:17 |
|
||
|
Разделение памяти между модулями, ShareMM итп
|
|||
|---|---|---|---|
|
#18+
hlopotun Можно ли заставить Delphi в разных модулях (dll, ocx итп) совместно используемых в приложении использовать разные менеджеры памяти Другой вопрос, что я не уверен, что {$SETPEFLAGS IMAGE_FILE_LARGE_ADDRESS_AWARE} можно использовать в dll hlopotun Хорошо бы что то почитать на эту тему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2021, 19:40 |
|
||
|
Разделение памяти между модулями, ShareMM итп
|
|||
|---|---|---|---|
|
#18+
"применять опцию {$SETPEFLAGS $20} только в рамках одного из модулей" нельзя конечно - это флаг для процесса. Да, и как вы себе представляете передачу указателя между модулями, если бы то, чего вы хотите, было возможным?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2021, 20:25 |
|
||
|
Разделение памяти между модулями, ShareMM итп
|
|||
|---|---|---|---|
|
#18+
[quot _Vasilisk_#22348798] hlopotun ............ Другой вопрос, что я не уверен, что {$SETPEFLAGS IMAGE_FILE_LARGE_ADDRESS_AWARE} можно использовать в dll ............ В тесте, когда инструкция стоит в основной программе и в dll работает, по крайней мере в dll процедуре до 3Гб памяти выделяет, без этой инструкции провоцирует исключение OutOfMemory. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2021, 09:32 |
|
||
|
Разделение памяти между модулями, ShareMM итп
|
|||
|---|---|---|---|
|
#18+
Barlone "применять опцию {$SETPEFLAGS $20} только в рамках одного из модулей" нельзя конечно - это флаг для процесса. Да, и как вы себе представляете передачу указателя между модулями, если бы то, чего вы хотите, было возможным?? да, согласен. Нет никакой гарантии что за пределами 2Гб не будет выделена память мод функции или что либо другое используемое из других модулей. Другими словами или везде или нигде. А учитывая наличие модуля без исходников из D5 (генератор отчётов) идею можно похоронить. Потому как минимум этот модуль перевести на новую модель не получится, даже если везде перевести конвертацию из Pointer в Integer на Pointer в NativeUInt и выключить контроль переполнения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2021, 09:43 |
|
||
|
Разделение памяти между модулями, ShareMM итп
|
|||
|---|---|---|---|
|
#18+
hlopotun А учитывая наличие модуля без исходников из D5 (генератор отчётов) идею можно похоронить. Можно попробовать. В генераторе отчетов по идее не должно быть указательной магии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2021, 10:14 |
|
||
|
Разделение памяти между модулями, ShareMM итп
|
|||
|---|---|---|---|
|
#18+
"Угадай автора по названию темы". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2021, 11:20 |
|
||
|
Разделение памяти между модулями, ShareMM итп
|
|||
|---|---|---|---|
|
#18+
hlopotun, ОФФ Я подумал, раз вы в теме менеджеров памяти так плотно закопались, то (чтобы расширить горизонты) посоветую ещё вот эту страничку
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2021, 11:53 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=40084797&tid=2037172]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
97ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 292ms |
| total: | 483ms |

| 0 / 0 |
