mmap асинхронная запись
От: valuea  
Дата: 31.07.14 17:43
Оценка:
Господа, такой вопросик, даже два.
Выполняю асинхронную запись в файл через mmap, примерно так:
msync(ptr, 4096, MS_ASYNC);
msync(ptr + 4096, 4096, MS_ASYNC);

1. Гарантируется ли в этом случае последовательность записи данных на диск, то есть сначала будет записана первая страница, затем вторая? Либо для асинхронных опреаций в общем случае никакой последовательности не соблюдается?
2. Если сразу после второго вызова msync (или во время его выполнения в другом потоке), вторая страница будет перезаписана, то какие данные в конечном итоге попадут в файл? Те, которые были на момент вызова msync, или на момент физической записи на диск?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.