You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# This log is a bit noisy and doesn't really provide a lot of useful information:
216
218
Console.debug(self,"Waiting for children...",duration: duration,running: @running)
217
219
218
220
unless@running.empty?
219
221
# Maybe consider using a proper event loop here:
220
-
ifready=self.select(duration)
222
+
ifready=self.select(duration,events)
223
+
ifevents && ready.delete(events.io)
224
+
result=:event
225
+
end
226
+
221
227
ready.eachdo |io|
222
228
iffiber=@running[io]
223
229
# This method can be re-entered. While resuming a fiber, a policy hook may be invoked, which may invoke operations on the container. In that case, select may be called again on the same set of waiting fibers. On returning, those fibers may have already completed and removed themselves from @running, so we need to check for that.
224
230
fiber.resume
225
231
end
226
232
end
233
+
234
+
returnresult
227
235
end
228
236
end
229
237
end
230
238
231
239
# Wait for a child process to exit OR a signal to be received.
0 commit comments