summaryrefslogtreecommitdiff
path: root/thread_pthread.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-05-30 01:52:38 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-05-30 01:52:38 +0000
commit1b63d7bc927ace82f91704d6472d90511209f944 (patch)
treed686c70e7069ec3e2eb23bad3c40a418b39b2505 /thread_pthread.c
parentb9ff5a2fd6d24ce828184729addc40d2825a8896 (diff)
* vm_core.h (struct rb_unblock_callback), thread.c
(set_unblock_function), thread_{pthread,win32}.c (native_sleep): extracted from struct rb_thread_struct. * thread.c (reset_unblock_function): not check interrupts at leaving blocking region. [ruby-dev:34874] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread_pthread.c')
-rw-r--r--thread_pthread.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/thread_pthread.c b/thread_pthread.c
index 58ce378841..e5a6566267 100644
--- a/thread_pthread.c
+++ b/thread_pthread.c
@@ -424,8 +424,8 @@ native_sleep(rb_thread_t *th, struct timeval *tv)
GVL_UNLOCK_BEGIN();
{
pthread_mutex_lock(&th->interrupt_lock);
- th->unblock_function = ubf_pthread_cond_signal;
- th->unblock_function_arg = th;
+ th->unblock.func = ubf_pthread_cond_signal;
+ th->unblock.arg = th;
if (RUBY_VM_INTERRUPTED(th)) {
/* interrupted. return immediate */
@@ -451,8 +451,8 @@ native_sleep(rb_thread_t *th, struct timeval *tv)
thread_debug("native_sleep: pthread_cond_timedwait end (%d)\n", r);
}
}
- th->unblock_function = 0;
- th->unblock_function_arg = 0;
+ th->unblock.func = 0;
+ th->unblock.arg = 0;
pthread_mutex_unlock(&th->interrupt_lock);
th->status = prev_status;