From 185c93eb0c8df629033be48e5eef431190c65226 Mon Sep 17 00:00:00 2001 From: Matthew Draper Date: Thu, 25 Feb 2016 14:31:19 +1030 Subject: Use AS::Executor / AS::Reloader to support reloading in ActionCable --- actioncable/lib/action_cable/server/base.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'actioncable/lib/action_cable/server/base.rb') diff --git a/actioncable/lib/action_cable/server/base.rb b/actioncable/lib/action_cable/server/base.rb index c3b64299e3..d9a2653cc2 100644 --- a/actioncable/lib/action_cable/server/base.rb +++ b/actioncable/lib/action_cable/server/base.rb @@ -33,6 +33,16 @@ module ActionCable remote_connections.where(identifiers).disconnect end + def restart + connections.each(&:close) + + @mutex.synchronize do + worker_pool.halt if @worker_pool + + @worker_pool = nil + end + end + # Gateway to RemoteConnections. See that class for details. def remote_connections @remote_connections || @mutex.synchronize { @remote_connections ||= RemoteConnections.new(self) } -- cgit v1.2.3