mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
![normal](/assets/img/avatar_default.png)
Spurious wakeup is unavoidable with MJIT; and any real code must be able to deal with spurious wakeup anyways. [ruby-core:87882] https://bugs.ruby-lang.org/issues/14901 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
26 lines
520 B
Ruby
26 lines
520 B
Ruby
# frozen_string_literal: false
|
|
class TestLastThread < Test::Unit::TestCase
|
|
|
|
# [Bug #11237]
|
|
def test_last_thread
|
|
if defined?(RubyVM::MJIT) && RubyVM::MJIT.enabled?
|
|
skip 'spurious wakeup unavoidable with MJIT'
|
|
end
|
|
|
|
assert_separately([], <<-"end;") #do
|
|
require '-test-/gvl/call_without_gvl'
|
|
|
|
Thread.new {
|
|
sleep 0.2
|
|
}
|
|
|
|
t0 = Time.now
|
|
Thread.current.__runnable_sleep__ 1
|
|
t1 = Time.now
|
|
t = t1 - t0
|
|
|
|
assert_in_delta(1.0, t, 0.16)
|
|
end;
|
|
end
|
|
end
|
|
|