Адекватность полученных данных при работе с отображением файла..

Тема в разделе "WASM.WIN32", создана пользователем Viewsight, 13 ноя 2004.

  1. Viewsight

    Viewsight New Member

    Публикаций:
    0
    Регистрация:
    2 ноя 2004
    Сообщения:
    11
    Вопроос собственно такой:

    Существует некотороый процесс который работает напрямую с файлом (То читает то пишет туда..) в некоторое время он блокирует области (видимо в которые пишет)...

    Я создаю отображение этого файла в память, соответственно

    могу читать заблокированную область файла.

    Файл этот - например база данных размером 300мб



    читаю я по 32к насколько адекватным (по данным) я получу результирующий файл.



    Как сделать мгновенный снимок этого файла?...



    Вопрос я задал потому что в МСДН написано что отображение будет адекватно в данный момент времени...

    Соотвентственно если я передвигаю отображение в следующий момент времени то адекватность будет в след. момент



    Другими словами пока я буду копировать файл там много что может измениться и я получу в результате "солянку"?...
     
  2. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105




    Так базы именно для этого и создавались.

    Не хочешь "солянку", используй стандартные

    процедуру доступа. Можно конечно, что-то

    подправить, чтобы "захват" меньше мешал.

    Дополнительно, прочти про "backup" баз.

    Ведь как-то их делают. Вряд ли в банковских

    базах закрывают доступ на это время.

    ++++++++++++++++++

    Как вариант : сделай хук на запись в базу

    и запусти два треда : один - полное копирование,

    а второй обновление из хука, но будет еще

    куча тонкостей....