io.c (io_reopen): IO#close releases GVL if possible. close() may block for certain file types (NFS, SO_LINGER sockets, inotify), so let other threads run. The patch was created by Eric Wong [ruby-core:35555][Bug #4527]
io.c (fptr_finalize): ditto.
io.c (maygvl_fclose): new.
io.c (nogvl_fclose): ditto.
io.c (maygvl_close): ditto.
io.c (nogvl_close): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
io.c (io_reopen): IO#close releases GVL if possible.
close() may block for certain file types (NFS, SO_LINGER
sockets, inotify), so let other threads run. The patch was
created by Eric Wong [ruby-core:35555][Bug #4527]
io.c (fptr_finalize): ditto.
io.c (maygvl_fclose): new.
io.c (nogvl_fclose): ditto.
io.c (maygvl_close): ditto.
io.c (nogvl_close): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e