るりまサーチ

最速Rubyリファレンスマニュアル検索!
33件ヒット [1-33件を表示] (0.113秒)

別のキーワード

  1. rexml/document write
  2. _builtin write
  3. io write
  4. tuple write
  5. stringio write

ライブラリ

クラス

キーワード

検索結果

Zlib::GzipWriter#pos -> Integer (21114.0)

現在までに圧縮したデータの長さの合計を返します。 ファイルポインタの位置ではないことに注意して下さい。

...イルポインタの位置ではないことに注意して下さい。

require 'zlib'

filename='hoge1.gz'
f = File.open(filename, "w")
Zlib::GzipWriter.wrap(f, Zlib::BEST_COMPRESSION){|gz|
(1..10).each {|i|
gz.print i
puts
gz.pos
}
}
#=> 1
#=> 2
#=> 3
......

Zlib::GzipWriter#tell -> Integer (6014.0)

現在までに圧縮したデータの長さの合計を返します。 ファイルポインタの位置ではないことに注意して下さい。

...イルポインタの位置ではないことに注意して下さい。

require 'zlib'

filename='hoge1.gz'
f = File.open(filename, "w")
Zlib::GzipWriter.wrap(f, Zlib::BEST_COMPRESSION){|gz|
(1..10).each {|i|
gz.print i
puts
gz.pos
}
}
#=> 1
#=> 2
#=> 3
......

File#flock(operation) -> 0 | false (49.0)

ファイルをロックします。

...(write lock)を使用してカウンタを更新。
# ロック前にファイルを切り詰めてしまうので、
# モードに"w"を使ってはいけません。
File.open("counter", File::RDWR|File::CREAT, 0644) {|f|
f.flock(File::LOCK_EX)
value = f.read.to_i + 1
f.rewind
f.write("#{...
...")
f.flush
f.truncate(f.pos)
}

# 読み込みロック(read lock)を使用してカウンタを読み込み。
File.open("counter", "r") {|f|
f.flock(File::LOCK_SH)
p f.read
}
//}

//emlist[例2:][ruby]{
f = File.open("/tmp/foo", "w")

f.flock(File::LOCK_EX)
puts
"locked by process1"

fork...
...", "r")
f.flock(File::LOCK_SH)
puts
"locked by process2"
sleep 5
puts
"unlocked by process2"
}

sleep 5

f.flock(File::LOCK_UN)
puts
"unlocked by process1"
sleep 1 # <- 子プロセスが確実に先にロックするための sleep
f.flock(File::LOCK_EX)
puts
"re-locked by process1"

# => l...