зеркало из https://github.com/github/ruby.git
Thread.exclusive: delete
Has been deprecated since 2069c9e031
.
[Feature #17125][ruby-core:99636]
This commit is contained in:
Родитель
eb9342d348
Коммит
b674fc9ca2
15
prelude.rb
15
prelude.rb
|
@ -1,18 +1,3 @@
|
||||||
class << Thread
|
|
||||||
# call-seq:
|
|
||||||
# Thread.exclusive { block } -> obj
|
|
||||||
#
|
|
||||||
# Wraps the block in a single, VM-global Mutex.synchronize, returning the
|
|
||||||
# value of the block. A thread executing inside the exclusive section will
|
|
||||||
# only block other threads which also use the Thread.exclusive mechanism.
|
|
||||||
def exclusive(&block) end if false
|
|
||||||
mutex = Mutex.new # :nodoc:
|
|
||||||
define_method(:exclusive) do |&block|
|
|
||||||
warn "Thread.exclusive is deprecated, use Thread::Mutex", uplevel: 1
|
|
||||||
mutex.synchronize(&block)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class Binding
|
class Binding
|
||||||
# :nodoc:
|
# :nodoc:
|
||||||
def irb
|
def irb
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
require_relative '../../spec_helper'
|
require_relative '../../spec_helper'
|
||||||
|
|
||||||
describe "Thread.exclusive" do
|
ruby_version_is ''...'2.8' do
|
||||||
|
describe "Thread.exclusive" do
|
||||||
before :each do
|
before :each do
|
||||||
ScratchPad.clear
|
ScratchPad.clear
|
||||||
$VERBOSE, @verbose = nil, $VERBOSE
|
$VERBOSE, @verbose = nil, $VERBOSE
|
||||||
|
@ -44,4 +45,5 @@ describe "Thread.exclusive" do
|
||||||
-> { Thread.exclusive { } }.should raise_error(ThreadError)
|
-> { Thread.exclusive { } }.should raise_error(ThreadError)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
Загрузка…
Ссылка в новой задаче