|
|
|
SafeArray выделение памяти и ее возврат системе
|
|||
|---|---|---|---|
|
#18+
Может, кто-нибудь знает что это такое? Windows 10 До выполнения выделено памяти 7 Мб После выполнения 10 Мб Пик выделения 99 Мб Куда захавало 3 Мб. Причем, если выполнить несколько/много раз, то больше 3-4 Мб не поднимается. Также заметил, что если долго ничего не делать, память вернулась обратно до 7 Мб (Долго это около часа) Windows 7 - хавает примерно 600 Кб Суть: Есть сервис, работает с OLE приложением. Пихает в него большие вариантные массивы созданные через VarArrayCreate. Пик памяти до 5 Гб доходит, когда в очереди накапливается много массивов. После такого прохода, остается висеть около 250 Мб. Если запустить процесс еще несколько раз, останутся те же 250 Мб. И пик будет тот же. Грешил на обертку Delphi, но вижу что прямой вызов ведет также. Теоретически, все равно сколько памяти сожрало и не отдало, ее много и не жалко, но хочется понимать модель поведения... Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2019, 02:25 |
|
||
|
SafeArray выделение памяти и ее возврат системе
|
|||
|---|---|---|---|
|
#18+
X-Citeзаметил, что если долго ничего не делать, память вернулась обратнопоигралось и отпустило X-Citeхочется понимать модель поведениямодель поведения виндового системного аллокатора можно просто принять и простить, оно от версий и редакций всяко разно умеет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2019, 10:00 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=59&tid=2038919]: |
0ms |
get settings: |
5ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 211ms |
| total: | 359ms |

| 0 / 0 |
