12件ヒット
[1-12件を表示]
(0.070秒)
検索結果
-
File
# flock(operation) -> 0 | false (18162.0) -
ファイルをロックします。
...。この指定がない場合、ブロックされる条件での flock
の呼び出しはロックが解除されるまでブロックされます。
File::LOCK_NB の指定がある場合、ブロックされる条件での
flock は false を返します。
「ブロックされる条件」......(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.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 {
f = File.open("/tmp/foo", "r")
f.flock(File::LOCK_SH)
puts "locked by process2"
sleep 5
puts "unlocked by process2"
}
sleep 5
f.flock(F...