Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.08.2009, 17:24   #1
slimvv
Новичок
Джуниор
 
Регистрация: 23.08.2009
Сообщений: 2
Вопрос про FileMapping

Всем привет!
У меня слудующий вопрос: требуется вести очень большие массивы в памяти, и над ними производить разного рода вычисления, но т.к в памяти не один не помещается использую FileMapping. Как можно открывать разные подгружаемые куски файла, не понятно какие устиновить 64-е смещения dwFileOffsetHigh и dwFileOffsetLow, размер dwNumberOfBytesToMap. Пишу почти с закрытыми глазами, из-за отсутствия инфы и примеров. Пока остановился на следующем:
имеется массив c[byte][int64] of byte, создал функцию которая разделяет его к примеру на (int64/10000000 - номер раздела для FM) мелкие массивы с[byte][10000000] и в зависимости от обращения к функции(f), подгружает его. Вообщем функция по номеру определяет с какой частью отображения ей работать. Так получается большой массив из функции.
hFileMapObj:=CreateFileMapping(MAXD WORD ,Nil,PAGE_READWRITE,0,200000000000, 'MySharedValue');
c:= MapViewOfFile(hFileMapObj,FILE_MAP_ WRITE , 0,0, 50000000000);
для смещения на новый раздел использую
c:= MapViewOfFile(hFileMapObj,FILE_MAP_ WRITE , 0,65536, 50000000000);
так к примеру ячейка массива с[50][50000000] будет находиться в отображении
c:= MapViewOfFile(hFileMapObj,FILE_MAP_ WRITE , 0,65536*4, 50000000000);
Хотелось бы узнать как правильно все организовать. Если написал чушь, буду рад если меня поправят.
slimvv вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Про кодировку... Lich Работа с сетью в Delphi 5 29.12.2008 10:32
про матрицы Smotritel89 Общие вопросы C/C++ 2 16.10.2008 15:13
Вопрос наверное про функции, а так точно даже не знаю про что. (Вопрос начинющего #6) Albert2008 Общие вопросы Delphi 4 21.08.2008 15:33
У меня вопрос про базы данных,а точнее про таблицы!!! Alexij Общие вопросы Delphi 1 13.04.2008 23:24