pwrite(string, offset) -> Integer
[permalink][rdoc][edit]-
stringをoffsetの位置にpwrite()システムコールを使って書き込みます。
IO#seekとIO#writeの組み合わせと比べて、アトミックな操作になるという点が優れていて、複数スレッド/プロセスから同じIOオブジェクトを様々な位置から読み込むことを許します。どのユーザー空間のIO層のバッファリングもバイパスします。
- [PARAM] string:
- 書き込む文字列を指定します。
- [PARAM] offset:
- ファイルポインタを変えずに書き込む位置を指定します。
- [RETURN]
- 書き込んだバイト数を返します。
- [EXCEPTION] Errno::EXXX:
- シークまたは書き込みが失敗した場合に発生します。
- [EXCEPTION] NotImplementedError:
- システムコールがサポートされていない OS で発生します。
File.open("testfile", "w") do |f| f.pwrite("ABCDEF", 3) # => 6 end File.read("testfile") # => "\u0000\u0000\u0000ABCDEF"