Project

General

Profile

Feature #17369

Updated by ioquatix (Samuel Williams) over 3 years ago

https://github.com/ruby/ruby/pull/3853 https://github.com/ruby/ruby/pull/3852 

 This PR introduces optional hooks to the scheduler interface for handling `Process.wait`, `Kernel.system` and other related methods (`waitpid`, `wait2`, etc). 

 It funnels all methods through a new interface `Process::Status.wait` which is almost identical to `Process.wait` except for several key differences: 

 - The return value is a single instance of `Process::Status`. 
 - It does not set thread local `$?`. 

 This is necessary for keeping the scheduler interface simple (and side effects are generally bad anyway).

Back