aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYuta Saito <kateinoigakukun@gmail.com>2022-01-16 00:37:09 +0900
committerYuta Saito <kateinoigakukun@gmail.com>2022-01-19 11:19:06 +0900
commitd6d52a7d049fd802b37d0f594629bad2cdc6b8c2 (patch)
treeb6f0efdba5823ace0919289ba8a4e7a06adf8b35
parentbf1c4d254beb0e01fac1d9e6cb805de8ec6260eb (diff)
downloadruby-d6d52a7d049fd802b37d0f594629bad2cdc6b8c2.tar.gz
thread.c: put platform specific part in each impl file
-rw-r--r--thread.c19
-rw-r--r--thread_pthread.c7
-rw-r--r--thread_win32.c6
3 files changed, 13 insertions, 19 deletions
diff --git a/thread.c b/thread.c
index 7b4ed2a7ab..52ecf124bd 100644
--- a/thread.c
+++ b/thread.c
@@ -351,25 +351,6 @@ ubf_sigwait(void *ignore)
#include THREAD_IMPL_SRC
-#if defined(_WIN32)
-
-#define DEBUG_OUT() \
- WaitForSingleObject(&debug_mutex, INFINITE); \
- printf(POSITION_FORMAT"%#lx - %s" POSITION_ARGS, GetCurrentThreadId(), buf); \
- fflush(stdout); \
- ReleaseMutex(&debug_mutex);
-
-#elif defined(HAVE_PTHREAD_H)
-
-#define DEBUG_OUT() \
- pthread_mutex_lock(&debug_mutex); \
- printf(POSITION_FORMAT"%"PRI_THREAD_ID" - %s" POSITION_ARGS, \
- fill_thread_id_string(pthread_self(), thread_id_string), buf); \
- fflush(stdout); \
- pthread_mutex_unlock(&debug_mutex);
-
-#endif
-
/*
* TODO: somebody with win32 knowledge should be able to get rid of
* timer-thread by busy-waiting on signals. And it should be possible
diff --git a/thread_pthread.c b/thread_pthread.c
index 6f0cc3d54c..55289de73a 100644
--- a/thread_pthread.c
+++ b/thread_pthread.c
@@ -47,6 +47,13 @@
# define USE_EVENTFD (0)
#endif
+#define DEBUG_OUT() \
+ pthread_mutex_lock(&debug_mutex); \
+ printf(POSITION_FORMAT"%"PRI_THREAD_ID" - %s" POSITION_ARGS, \
+ fill_thread_id_string(pthread_self(), thread_id_string), buf); \
+ fflush(stdout); \
+ pthread_mutex_unlock(&debug_mutex);
+
#if defined(SIGVTALRM) && !defined(__CYGWIN__) && !defined(__EMSCRIPTEN__)
# define USE_UBF_LIST 1
#endif
diff --git a/thread_win32.c b/thread_win32.c
index 026ccc4c60..9b44ceb96a 100644
--- a/thread_win32.c
+++ b/thread_win32.c
@@ -25,6 +25,12 @@
#define ubf_timer_disarm() do {} while (0)
#define ubf_list_atfork() do {} while (0)
+#define DEBUG_OUT() \
+ WaitForSingleObject(&debug_mutex, INFINITE); \
+ printf(POSITION_FORMAT"%#lx - %s" POSITION_ARGS, GetCurrentThreadId(), buf); \
+ fflush(stdout); \
+ ReleaseMutex(&debug_mutex);
+
static volatile DWORD ruby_native_thread_key = TLS_OUT_OF_INDEXES;
static int w32_wait_events(HANDLE *events, int count, DWORD timeout, rb_thread_t *th);