diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-11-28 13:01:25 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-11-28 13:01:25 +0000 |
commit | 9d0de48e662046d870e38a21771cbe939031051a (patch) | |
tree | 62b31c596421c4befcbcdc1358ff1a0821397bdf /include | |
parent | f5dc27aa77f77e68086d9300c7dfe1a3280c7714 (diff) |
* include/ruby/thread.h (rb_thread_call_without_gvl2): change
meaning of function.
This function is called with same parameters of
`rb_thread_call_without_gvl()'.
However, if interrupts are detected, when return immediately.
* thread.c: implement `rb_thread_call_without_gvl2()'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'include')
-rw-r--r-- | include/ruby/thread.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/include/ruby/thread.h b/include/ruby/thread.h index f3b1483a9c..fb9057c70f 100644 --- a/include/ruby/thread.h +++ b/include/ruby/thread.h @@ -26,12 +26,14 @@ extern "C" { #endif void *rb_thread_call_with_gvl(void *(*func)(void *), void *data1); + void *rb_thread_call_without_gvl(void *(*func)(void *), void *data1, rb_unblock_function_t *ubf, void *data2); -void *rb_thread_call_without_gvl2(void *(*func)(void *, VALUE *), void *data1, - rb_unblock_function_t *ubf, void *data2); +void *rb_thread_call_without_gvl2(void *(*func)(void *), void *data1, + rb_unblock_function_t *ubf, void *data2); -#define RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS 0x01 +#define RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS_AFTER 0x01 +#define RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS_ #if defined __GNUC__ && __GNUC__ >= 4 #pragma GCC visibility pop |