mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
c289cf3a1f
is different from 1.8's. Thread.exclusive only does synchronize with VM global mutex. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
23 lines
258 B
Ruby
23 lines
258 B
Ruby
|
|
# Mutex
|
|
|
|
class Mutex
|
|
def synchronize
|
|
self.lock
|
|
yield
|
|
ensure
|
|
self.unlock
|
|
end
|
|
end
|
|
|
|
# Thread
|
|
|
|
class Thread
|
|
MUTEX_FOR_THREAD_EXCLUSIVE = Mutex.new
|
|
def self.exclusive
|
|
MUTEX_FOR_THREAD_EXCLUSIVE.synchronize{
|
|
yield
|
|
}
|
|
end
|
|
end
|
|
|