From: ara.t.howard@... Date: 2006-01-13T00:28:11+09:00 Subject: Re: Calling flock with block? On Thu, 12 Jan 2006, Bertram Scharpf wrote: >> it's not needed. also, since getting a lock releases ALL other locks on the >> file this needs to throw an error >> >> open(path,"r+") do |f| >> f.flock(File::LOCK_EX) do >> f.flock(File::LOCK_SH) do >> # we don't have the lock here, error should be raised! >> end >> end >> end > > As there's no use of nested locking it should be inhibited > at all. well... i'm not sure that's quite true. the example above could be quite well intended to downgrade a write lock to a read lock... so it's unclear whether it should warn or raise... probably raise is best. and i think the forking issue is basically unsolvable since flock, unlike fcntl, provides no mechanism for checking which pid holds a lock... > Admittedly, file locking and all of that partially file locking is not > actually the most convincing feature of Un*x ... yes. i use posixlock in all my stuff - it's 2% better and safe on all fs. >> strong and healthy, who thinks of sickness until it strikes like lightning? >> preoccupied with the world, who thinks of death, until it arrives like >> thunder? -- milarepa > > jc did. ok - i haven't drank my coffee yet - who is jc? -a -- strong and healthy, who thinks of sickness until it strikes like lightning? preoccupied with the world, who thinks of death, until it arrives like thunder? -- milarepa