summaryrefslogtreecommitdiff
path: root/ruby.h
diff options
context:
space:
mode:
authornagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-03-02 08:11:28 +0000
committernagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-03-02 08:11:28 +0000
commit9815949157a76bb32dd516638f0f17549a15081c (patch)
treee63625a87f495ed2e96ebcea086b3f6723b9ab3d /ruby.h
parent3124427ccbf02a5bd20f169ad6a328286e05c262 (diff)
* eval.c (ruby_native_thread_kill): call pthread_kill() to send a
signal to ruby's native thread * ruby.h: add definition of ruby_native_thread_kill() * signal.c (sigsend_to_ruby_thread): send the signal to ruby's native thread ([ruby-dev:25744], [ruby-dev:25754]), and set signal mask to the current native thread git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby.h')
-rw-r--r--ruby.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/ruby.h b/ruby.h
index ed3c3a1591..a5ae0636f9 100644
--- a/ruby.h
+++ b/ruby.h
@@ -694,6 +694,9 @@ typedef pthread_t rb_nativethread_t;
# define NATIVETHREAD_CURRENT() pthread_self()
# define NATIVETHREAD_EQUAL(t1,t2) pthread_equal((t1),(t2))
# define HAVE_NATIVETHREAD
+
+# define NATIVETHREAD_KILL(th,sig) pthread_kill((th),(sig))
+# define HAVE_NATIVETHREAD_KILL
#elif defined(_WIN32) || defined(_WIN32_WCE)
typedef DWORD rb_nativethread_t;
# define NATIVETHREAD_CURRENT() GetCurrentThreadId()
@@ -701,10 +704,13 @@ typedef DWORD rb_nativethread_t;
# define HAVE_NATIVETHREAD
#endif
#ifdef HAVE_NATIVETHREAD
-RUBY_EXTERN int is_ruby_native_thread();
+int is_ruby_native_thread _((void));
#else
#define is_ruby_native_thread() (1)
#endif
+#ifdef HAVE_NATIVETHREAD_KILL
+void ruby_native_thread_kill _((int));
+#endif
#if defined(__cplusplus)
} /* extern "C" { */