Ruby  2.0.0p247(2013-06-27revision41674)
thread.h
Go to the documentation of this file.
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 #if defined __GNUC__ && __GNUC__ >= 4
25 #pragma GCC visibility push(default)
26 #endif
27 
28 void *rb_thread_call_with_gvl(void *(*func)(void *), void *data1);
29 
30 void *rb_thread_call_without_gvl(void *(*func)(void *), void *data1,
31  rb_unblock_function_t *ubf, void *data2);
32 void *rb_thread_call_without_gvl2(void *(*func)(void *), void *data1,
33  rb_unblock_function_t *ubf, void *data2);
34 
35 #define RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS_AFTER 0x01
36 #define RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS_
37 
38 #if defined __GNUC__ && __GNUC__ >= 4
39 #pragma GCC visibility pop
40 #endif
41 
42 #if defined(__cplusplus)
43 #if 0
44 { /* satisfy cc-mode */
45 #endif
46 } /* extern "C" { */
47 #endif
48 
49 #endif /* RUBY_THREAD_H */
SSL_METHOD *(* func)(void)
Definition: ossl_ssl.c:108
void * rb_thread_call_without_gvl2(void *(*func)(void *), void *data1, rb_unblock_function_t *ubf, void *data2)
Definition: thread.c:1317
void rb_unblock_function_t(void *)
Definition: ripper.y:833
void * rb_thread_call_without_gvl(void *(*func)(void *), void *data1, rb_unblock_function_t *ubf, void *data2)
void * rb_thread_call_with_gvl(void *(*func)(void *), void *data1)
Definition: thread.c:1401