Perl: открытие файла без кэша записи - PullRequest
2 голосов
/ 15 декабря 2010

Я знаю, что современные * nix ОС позволяют открывать файл, чтобы данные не кэшировались в системном / дисковом кэше записи, поэтому любая операция записи завершится только тогда, когда данные физически записаны на диск.

Не могли бы вы подсказать, как мне это сделать в Perl?

ОС - это AIX / Solaris.

1 Ответ

6 голосов
/ 15 декабря 2010

Используйте функцию sysopen с O_SYNC в качестве одного из флагов. Проверьте в системных руководствах поддерживаемые флаги (man 2 open). Я знаю, что это есть в Solaris 10, не уверен насчет AIX. Например:

sysopen(FH, $path, O_SYNC | O_WRONLY | O_CREAT)

См. http://perldoc.perl.org/functions/sysopen.html для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...