From: Eric Wong Date: 2018-05-15T09:53:15+00:00 Subject: [ruby-core:87040] Re: cross-thread IO#close semantics Likewise, IO.copy_stream also fails to detect cross-thread IO#close because it does not use waiting_fd infrastructure in rb_thread_io_blocking_region. ``` r, w = IO.pipe th = Thread.new do begin IO.copy_stream(r, '/dev/null') rescue => e warn [ e.class, e.message ].inspect end end sleep 0.1 r.close th.join ``` Should I change IO.copy_stream and IO.select to avoid stuck threads in these cases? Unsubscribe: