From: "drbrain (Eric Hodel)" Date: 2012-07-03T11:55:33+09:00 Subject: [ruby-core:46124] [ruby-trunk - Feature #4328] export rb_thread_call_with_gvl() Issue #4328 has been updated by drbrain (Eric Hodel). Description updated I was going to use rb_thread_call_with_gvl for #6612, but the declaration was moved to internal.h which is not exported and causes a warning when compiling zlib.c. Was this intentional? The current location seems to allow use by core ruby only. To be usable by extensions the declaration should be in include/ruby/intern.h alongside rb_thread_blocking_region. ---------------------------------------- Feature #4328: export rb_thread_call_with_gvl() https://bugs.ruby-lang.org/issues/4328#change-27736 Author: normalperson (Eric Wong) Status: Closed Priority: Normal Assignee: ko1 (Koichi Sasada) Category: core Target version: 1.9.3 =begin I think it is general enough to remain supported along with the rest of the MRI C API, especially since rb_thread_blocking_region() exists and is supported. It's useful for interacting with certain C libraries that expect a user-supplied callback function so the extension can allocate a Ruby object inside the callback. It can also be easily made a no-op for Ruby implementations without a GVL. =end -- http://bugs.ruby-lang.org/