Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.15;
Скачать: CL | DM;

Вниз

Массив. Где он?   Найти похожие ветки 

 
Dmk ©   (2002-08-03 01:10) [0]

Есть массив.
Определен как var xBuffer:array[0..1024*512-1] of bytes;

Значит ли это, что массив постоянно расположен именно в оперативной памяти?


 
ACR ©   (2002-08-03 02:03) [1]

в видавозе никода низя зарание сказать что где и почему будет расположено :)


 
Yaro ©   (2002-08-03 02:27) [2]

Если тебя интерисует обращение к массиву через АSМ, то смело можешь работать так же как и в ДОСе, а где он на самом деле находится - фиг его знает. :( Для тебя это абсолютно прозрачно..


 
Юрий Зотов ©   (2002-08-03 02:32) [3]

Это значит, что массив постоянно расположен в памяти. Но не обязательно именно в оперативной.

Впрочем, программе это все равно.


 
Dmk ©   (2002-08-03 03:53) [4]

Эх. А мне не все равно. Нужно, чтобы он всегда был в оперативной памяти. Может выделить память по другому? Дело в том, что через него идет запись на диск. А если он на диске ... представляете себе какой swap идет! С диска в память и обратно. А обработка идет побайтно!!!


 
ACR ©   (2002-08-03 04:02) [5]

Память при выделении можно паметить как неперемещаемую тобишь залокать ее если оперативки хватит то все впарядке.. ты не один ее локаешь многие ее хатят залокать... :) к томуже если даже аперативки хватает может ненайтись непрерывного участка нежного размера....


 
ACR ©   (2002-08-03 04:29) [6]

во еще есть функция SetProcessWorkingSetSize
тока в NT и в Win32s работает :)


 
Юрий Зотов ©   (2002-08-03 10:35) [7]

1. IMHO, если к массиву или какой-то его части происходят частые обращения, то высока вероятность того, что этот массив (или эта его часть) действительно будет все время (или почти все время) находиться в оперативной памяти. Поскольку swappping страниц Windows кэширует.

2. > через него идет запись на диск.

Запись на диск - штука сама по себе достаточно медленная (и тоже кэшируемая, если не запрещать при открытии файла). Поэтому вряд ли будет так уж критично, где именно находится массив. И поэтому я бы не стал лочить память, не погоняв сначала программу и не убедившись в том, что это действительно стоит делать.

3. Даже если программа действительно работает слишком медленно, то стоит поискать, почему это так (прогнать профайлером, например). Вполне вероятно, что главная проблема окажется совсем в другом месте.


 
Dmk ©   (2002-08-03 20:17) [8]

Попробую ...



Страницы: 1 вся ветка

Текущий архив: 2002.08.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.021 c
8-48208
Mr.Ice
2002-04-09 07:39
2002.08.15
скины


1-48153
lpp
2002-07-31 11:43
2002.08.15
Как сделать форму для ввода пароля?


3-47961
jessis
2002-07-26 09:44
2002.08.15
Ошибка:


14-48246
mvg_first
2002-07-18 19:28
2002.08.15
Кто и как использует продукты Rational


3-47995
bahrov
2002-07-26 16:50
2002.08.15
как определить Дебагер