From 09c96a7858955f2b94238bd4bf38729f0d650f22 Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 3 Oct 2013 01:37:00 +0000 Subject: thread_pthread.c: set thread name * thread_pthread.c (thread_timer): set timer thread name on OSX too. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43128 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- thread_pthread.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'thread_pthread.c') diff --git a/thread_pthread.c b/thread_pthread.c index 74d1ab7517..3911f8fcff 100644 --- a/thread_pthread.c +++ b/thread_pthread.c @@ -1416,6 +1416,15 @@ timer_thread_sleep(rb_global_vm_lock_t* unused) } #endif /* USE_SLEEPY_TIMER_THREAD */ +#if defined(__linux__) && defined(PR_SET_NAME) +# define SET_THREAD_NAME(name) prctl(PR_SET_NAME, name) +#elif defined(__APPLE__) +/* pthread_setname_np() on Darwin does not have target thread argument */ +# define SET_THREAD_NAME(name) pthread_setname_np(name) +#else +# define SET_THREAD_NAME(name) (void)0 +#endif + static void * thread_timer(void *p) { @@ -1423,9 +1432,7 @@ thread_timer(void *p) if (TT_DEBUG) WRITE_CONST(2, "start timer thread\n"); -#if defined(__linux__) && defined(PR_SET_NAME) - prctl(PR_SET_NAME, "ruby-timer-thr"); -#endif + SET_THREAD_NAME("ruby-timer-thr"); #if !USE_SLEEPY_TIMER_THREAD native_mutex_initialize(&timer_thread_lock); -- cgit v1.2.1