diff options
author | Matthew Draper <matthew@trebex.net> | 2016-03-04 05:31:48 +1030 |
---|---|---|
committer | Matthew Draper <matthew@trebex.net> | 2016-03-04 05:31:48 +1030 |
commit | bbba0649f529626a076c4247047b60cfbe86d5e4 (patch) | |
tree | cdbf52c160399441574d1f13dd6587ee504e002d /actioncable/lib/action_cable/connection/stream_event_loop.rb | |
parent | cd73632d9d47752013f46e775e59241215cfd8e9 (diff) | |
parent | a373be9da45d4bee684ea03420212780ec1ef4b1 (diff) | |
download | rails-bbba0649f529626a076c4247047b60cfbe86d5e4.tar.gz rails-bbba0649f529626a076c4247047b60cfbe86d5e4.tar.bz2 rails-bbba0649f529626a076c4247047b60cfbe86d5e4.zip |
Merge pull request #23992 from matthewd/em-option
Support faye-websocket + EventMachine as an option
Diffstat (limited to 'actioncable/lib/action_cable/connection/stream_event_loop.rb')
-rw-r--r-- | actioncable/lib/action_cable/connection/stream_event_loop.rb | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/actioncable/lib/action_cable/connection/stream_event_loop.rb b/actioncable/lib/action_cable/connection/stream_event_loop.rb index e6335082d2..2abad09c03 100644 --- a/actioncable/lib/action_cable/connection/stream_event_loop.rb +++ b/actioncable/lib/action_cable/connection/stream_event_loop.rb @@ -11,7 +11,16 @@ module ActionCable @todo = Queue.new @spawn_mutex = Mutex.new - spawn + end + + def timer(interval, &block) + Concurrent::TimerTask.new(execution_interval: interval, &block).tap(&:execute) + end + + def post(task = nil, &block) + task ||= block + + Concurrent.global_io_executor << task end def attach(io, stream) |