summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-01-17 15:57:50 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-01-17 15:57:50 +0000
commit632fb2e15b91949211b85475d35a9653bdbf5702 (patch)
tree7d36657176336f17e6847f66d9353c7d3fdd7364
parentc474ecb0dfe0dd0d5e6b2b41f09eaf251d0c7079 (diff)
drb.rb: do not wait handler threads
* lib/drb/drb.rb (stop_service): just stop but do not wait handler threads. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--lib/drb/drb.rb5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/drb/drb.rb b/lib/drb/drb.rb
index 1ed5605007..e7a8d20211 100644
--- a/lib/drb/drb.rb
+++ b/lib/drb/drb.rb
@@ -1467,13 +1467,12 @@ module DRb
if Thread.current['DRb'] && Thread.current['DRb']['server'] == self
Thread.current['DRb']['stop_service'] = true
else
- threads = [@thread, *@grp.list]
if @protocol.respond_to? :shutdown
@protocol.shutdown
else
- threads.each {|thread| thread.kill} # xxx: Thread#kill
+ [@thread, *@grp.list].each {|thread| thread.kill} # xxx: Thread#kill
end
- threads.each {|thread| thread.join}
+ @thread.join
end
end