Issue #4527 has been updated by Yui NARUSE.

Status changed from Assigned to Closed
Backport changed from 2.0.0: REQUIRED, 2.1: REQUIRED to 2.0.0: DONTNEED, 2.1: DONTNEED

Eric Wong wrote:
> naruse / airemix.jp wrote:
>  > A patch proposed Eric in [ruby-core:35610] is not merged yet.
>  
>  Won't apply after r43373 (which is way more important).
>  
>  I don't think the current close(tmpfd) needs to release GVL in the
>  new code path it is dropping a refcount after rb_cloexec_dup2;
>  so nothing expensive going on in the kernel.
>  
>  close performance on inotify descriptors (my main reason for this) is
>  much improved since 2011, too.  AFAIK the heavy lifting was moved to
>  asynchronous kernel workqueues.

Sure, thanks for explanation.

----------------------------------------
Bug #4527: [PATCH] IO#close releases GVL if possible
https://bugs.ruby-lang.org/issues/4527#change-47970

* Author: Eric Wong
* Status: Closed
* Priority: Normal
* Assignee: Motohiro KOSAKI
* Category: core
* Target version: 
* ruby -v: ruby 1.9.3dev (2011-03-25 trunk 31181) [x86_64-linux]
* Backport: 2.0.0: DONTNEED, 2.1: DONTNEED
----------------------------------------
=begin
close() may block for certain file types (NFS, SO_LINGER
sockets, inotify), so let other threads run.
=end


---Files--------------------------------
0001-IO-close-releases-GVL-if-possible.patch (1.6 KB)


-- 
https://bugs.ruby-lang.org/