1 /********************************************************************** 2 3 thread.h - 4 5 $Author: matz $ 6 created at: Tue Jul 10 17:35:43 JST 2012 7 8 Copyright (C) 2007 Yukihiro Matsumoto 9 10 **********************************************************************/ 11 12 #ifndef RUBY_THREAD_H 13 #define RUBY_THREAD_H 1 14 15 #if defined(__cplusplus) 16 extern "C" { 17 #if 0 18 } /* satisfy cc-mode */ 19 #endif 20 #endif 21 22 #include "ruby/intern.h" 23 24 RUBY_SYMBOL_EXPORT_BEGIN 25 26 void *rb_thread_call_with_gvl(void *(*func)(void *), void *data1); 27 28 void *rb_thread_call_without_gvl(void *(*func)(void *), void *data1, 29 rb_unblock_function_t *ubf, void *data2); 30 void *rb_thread_call_without_gvl2(void *(*func)(void *), void *data1, 31 rb_unblock_function_t *ubf, void *data2); 32 33 #define RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS_AFTER 0x01 34 #define RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS_ 35 36 RUBY_SYMBOL_EXPORT_END 37 38 #if defined(__cplusplus) 39 #if 0 40 { /* satisfy cc-mode */ 41 #endif 42 } /* extern "C" { */ 43 #endif 44 45 #endif /* RUBY_THREAD_H */ 46