2010-12-15 71 views
2

我知道現代* nix操作系統允許打開文件,以便數據不會緩存在系統/磁盤寫入緩存中,所以任何寫入操作都只在數據被寫入磁盤時完成。Perl:打開沒有寫入緩存的文件

你能建議我怎麼在Perl中做到這一點?

OS是AIX/Solaris。

回答

6

使用帶有O_SYNC的sysopen函數作爲標誌之一。檢查系統聯機幫助頁是否有支持的標誌(man 2打開)。我知道它在Solaris 10上,不知道AIX。例如:

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

查看http://perldoc.perl.org/functions/sysopen.html瞭解更多信息。