![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Работа с памятью
Cosinus © (2004-08-12 16:39:00)При работе с файлом для увеличения быстродействия, я его копирую в память(GetMem и бла-бла-бла). Но если пользователь "ради интереса" или просто случайно попытается запихать туда файл какого-нибудь неимоверного размера, то естественно вылезет ошибка(если железо не позволяет естественно). Хочется сделать обработку искл.ситуации и если файл превышает какие-либо пределы, то загрузку не производить. Вопрос собственно вот в чем - что программа должна знать о конфигурации компьютера и о кол-ве свободной памяти, чтобы расчитать безопасный размер искомого файла? То есть, чтобы не только знать, сколько есть свободной памяти, но оставить какое то кол-во для других более позже запущеных программ. Может я немного сумбурно объяснил - если что непонятно - попробую разъяснить.
Cosinus (2004-08-12 18:06:00) [1]>>Romkin © (12.08.04 18:04) [5]
ГЛАВА 13 Архитектура памяти в Windows ;)
Romkin (2004-08-12 18:04:00) [2]Да, хорошая мысль. Особенно раздел "Memory mapped files" ;)
Cosinus (2004-08-12 17:47:00) [3]Ок, всем спасибо.
>>Digitman ©
...есть такое понятие - "виртуальное адресное пространство процесса"...-ну что же... читаем Рихтера. :)
Anatoly Podgoretsky (2004-08-12 17:03:00) [4]Cosinus © (12.08.04 16:39)
Размер свободной памяти особого смысла не имеет, не хватит, так освободит что бы хватило. Или ты думаешь, что как в Досе все загружается в оперативную память.
@Lex (2004-08-12 16:57:00) [5]GlobalMemoryStatus
Digitman (2004-08-12 16:54:00) [6]
> для увеличения быстродействия, я его копирую в память(GetMem
> и бла-бла-бла).
дурнее не придумаешь
> естественно вылезет ошибка(если железо не позволяет естественно)
именно "железо" здесь ни при чем, не выдумывай
> что программа должна знать о конфигурации компьютера и о
> кол-ве свободной памяти, чтобы расчитать безопасный размер
> искомого файла?
ничего. это не ее "собачье дело".
есть такое понятие - "виртуальное адресное пространство процесса" - от него и пляши, оно и определяет потенцию или импотенцию в упомянутой ситуации