1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

remove Ractor#close

close_incoming by antoher ractor means there is no other messages
will be sent to the ractor, so Ractor.receive will block forever,
and it should raise and stop.

close_outgoing by antoher ractor means, ... I don't have good idea
to use it. It can be a private method.

Ractor#close calls both, but it does not make sense to call
different purpose methods, so I remove it.
This commit is contained in:
Koichi Sasada 2020-11-11 16:15:04 +09:00
parent deed21bb08
commit fa3670e6e4
Notes: git 2020-11-11 18:11:33 +09:00
2 changed files with 2 additions and 10 deletions

View file

@ -201,8 +201,8 @@ assert_equal 'ok', %q{
# Raise Ractor::ClosedError when try to send into a closed actor
assert_equal 'ok', %q{
r = Ractor.new { Ractor.receive }
r.close_incoming
r.close
begin
r.send(1)
rescue Ractor::ClosedError
@ -219,7 +219,7 @@ assert_equal 'ok', %q{
Ractor.receive
end
r.close
r.close_outgoing
begin
r.take
rescue Ractor::ClosedError

View file

@ -164,14 +164,6 @@ class Ractor
}
end
# Closes both incoming and outgoing ports.
def close
close_incoming
close_outgoing
self
end
# utility method
def self.shareable? obj
__builtin_cexpr! %q{