освобождение памяти
От: Collecter  
Дата: 26.07.06 10:11
Оценка:
есть прога на winapi. при загрузке она занимает 2300 Кб. сворачиваю, восстановливаю — занимает уже 500 Кб.
вопрос: как освободить память программно?
Re: освобождение памяти
От: ekamaloff Великобритания  
Дата: 26.07.06 10:14
Оценка:
Здравствуйте, Collecter, Вы писали:

C>есть прога на winapi. при загрузке она занимает 2300 Кб. сворачиваю, восстановливаю — занимает уже 500 Кб.

C>вопрос: как освободить память программно?

См. SetProcessWorkingSetSize
... << RSDN@Home 1.2.0 alpha rev. 655>>
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde
Re[2]: освобождение памяти
От: Collecter  
Дата: 26.07.06 10:44
Оценка:
Здравствуйте, ekamaloff, Вы писали:

C>>есть прога на winapi. при загрузке она занимает 2300 Кб. сворачиваю, восстановливаю — занимает уже 500 Кб.

C>>вопрос: как освободить память программно?

E>См. SetProcessWorkingSetSize


может я что-нибудь не понял, но эта функция не освобождает память: "The SetProcessWorkingSetSize function sets the minimum and maximum working set sizes for the specified process". Если проге в какой-то момент нужно 2,5 Мб памяти — пусть берет. Но вот почему освобождает она ее так экзотически?
Re[3]: освобождение памяти
От: ekamaloff Великобритания  
Дата: 26.07.06 10:53
Оценка:
Здравствуйте, Collecter, Вы писали:

C>может я что-нибудь не понял, но эта функция не освобождает память: "The SetProcessWorkingSetSize function sets the minimum and maximum working set sizes for the specified process". Если проге в какой-то момент нужно 2,5 Мб памяти — пусть берет. Но вот почему освобождает она ее так экзотически?


Блин, прочитал бы повнимательней справку по этой функции, там все написано:

SetProcessWorkingSetSize
...
The working set of a process is the set of memory pages currently visible to the process in physical RAM memory. These pages are resident and available for an application to use without triggering a page fault. The minimum and maximum working set sizes affect the virtual memory paging behavior of a process.

The working set of the specified process can be emptied by specifying the value -1 for both the minimum and maximum working set sizes.


Тут теюе и про отличие воркинг сета от реально занятой процессом памяти и про то, как освободить воркинг сет. Когда ты сворачиваешь приложение, его воркинг сет освобождается системой. Поэтому тамк манагер начинает показывать меньше
... << RSDN@Home 1.2.0 alpha rev. 655>>
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.