[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

about critical section

Difei

9/5/2008 5:27:00 AM

Greetings all,

I post a similar message to rails mailing list since I encountered
this problem during development of a rails application, but now the
problem is more ruby specific, so I decided to post here.

Basically, I have to implement a critical section like this to avoid
race condition:

/* begin critical section */
loop do
filename = generate_filename
break unless File.exist?(filename)
end
File.new(filename).flock
/* end */
write_to_filename

Somebody said I could open a file with exclusive lock, but I do not
know an atomic way. Could anyone help? Thanks alot!

Difei
--
Posted via http://www.ruby-....

2 Answers

Difei

9/5/2008 6:23:00 AM

0

Difei Zhao wrote:

> Somebody said I could open a file with exclusive lock, but I do not
> know an atomic way. Could anyone help? Thanks alot!
>

man 2 open, there is a O_EXCL
--
Posted via http://www.ruby-....

TPReal

9/5/2008 6:56:00 AM

0

Difei Zhao wrote:
> Basically, I have to implement a critical section like this to avoid
> race condition:

I think you can use Mutex. First

require 'thread'
$mutex=Mutex::new

and then

$mutex.synchronize{
# your critical section
}

TPR.
--
Posted via http://www.ruby-....