From fa3670e6e48a8553ad1f37bbfbd112911da497d1 Mon Sep 17 00:00:00 2001 From: Koichi Sasada Date: Wed, 11 Nov 2020 16:15:04 +0900 Subject: 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. --- bootstraptest/test_ractor.rb | 4 ++-- ractor.rb | 8 -------- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/bootstraptest/test_ractor.rb b/bootstraptest/test_ractor.rb index 0720c01caa..7101964a31 100644 --- a/bootstraptest/test_ractor.rb +++ b/bootstraptest/test_ractor.rb @@ -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 diff --git a/ractor.rb b/ractor.rb index b9fb4297b8..89e39e5e1c 100644 --- a/ractor.rb +++ b/ractor.rb @@ -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{ -- cgit v1.2.3