factor out poll_readers
This commit is contained in:
+12
-8
@@ -94,19 +94,23 @@ private ######################################################################
|
|||||||
kill_all "SIGKILL"
|
kill_all "SIGKILL"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def poll_readers
|
||||||
|
rs, ws = IO.select(readers.values, [], [], 1)
|
||||||
|
(rs || []).each do |r|
|
||||||
|
data = r.gets
|
||||||
|
next unless data
|
||||||
|
ps, message = data.split(",", 2)
|
||||||
|
color = colors[ps.split(".").first]
|
||||||
|
info message, ps, color
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def watch_for_output
|
def watch_for_output
|
||||||
Thread.new do
|
Thread.new do
|
||||||
require "win32console" if Foreman.windows?
|
require "win32console" if Foreman.windows?
|
||||||
begin
|
begin
|
||||||
loop do
|
loop do
|
||||||
rs, ws = IO.select(readers.values, [], [], 1)
|
poll_readers
|
||||||
(rs || []).each do |r|
|
|
||||||
data = r.gets
|
|
||||||
next unless data
|
|
||||||
ps, message = data.split(",", 2)
|
|
||||||
color = colors[ps.split(".").first]
|
|
||||||
info message, ps, color
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
rescue Exception => ex
|
rescue Exception => ex
|
||||||
puts ex.message
|
puts ex.message
|
||||||
|
|||||||
Reference in New Issue
Block a user