зеркало из https://github.com/github/ruby.git
add Ractor.main
It returns main Ractor, like Thread.main. [Feature #17418]
This commit is contained in:
Родитель
35471a9487
Коммит
d0e4ccbefc
|
@ -396,6 +396,13 @@ assert_equal 'ok', %q{
|
|||
end
|
||||
}
|
||||
|
||||
# Ractor.main returns main ractor
|
||||
assert_equal 'true', %q{
|
||||
Ractor.new{
|
||||
Ractor.main
|
||||
}.take == Ractor.current
|
||||
}
|
||||
|
||||
# a ractor with closed outgoing port should terminate
|
||||
assert_equal 'ok', %q{
|
||||
Ractor.new do
|
||||
|
|
|
@ -768,4 +768,11 @@ class Ractor
|
|||
def []=(sym, val)
|
||||
Primitive.ractor_local_value_set(sym, val)
|
||||
end
|
||||
|
||||
# returns main ractor
|
||||
def self.main
|
||||
__builtin_cexpr! %q{
|
||||
rb_ractor_self(GET_VM()->ractor.main_ractor);
|
||||
}
|
||||
end
|
||||
end
|
||||
|
|
Загрузка…
Ссылка в новой задаче