From a74230c45de8337ccf78ff8b48d094d622bf2c69 Mon Sep 17 00:00:00 2001 From: ko1 Date: Thu, 8 Feb 2007 12:06:08 +0000 Subject: * thread.c (GVL_UNLOCK_RANGE): rename to BLOCKING_REGION(). * thread.c (rb_thread_run_parallel): rename to rb_thread_blocking_region(). git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- thread.c | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) (limited to 'thread.c') diff --git a/thread.c b/thread.c index 770ee1af0..a241a41e2 100644 --- a/thread.c +++ b/thread.c @@ -92,7 +92,7 @@ NOINLINE(void rb_gc_save_machine_context(rb_thread_t *)); rb_thread_set_current(_th_stored); \ } while(0) -#define GVL_UNLOCK_RANGE(exec, ubf) do { \ +#define BLOCKING_REGION(exec, ubf) do { \ rb_thread_t *__th = GET_THREAD(); \ int __prev_status = __th->status; \ set_unblock_function(__th, ubf, 0); \ @@ -596,22 +596,21 @@ rb_thread_s_critical(VALUE self) return Qnil; } - VALUE -rb_thread_run_parallel(VALUE(*func)(rb_thread_t *th, void *), void *data, - rb_unblock_function_t *ubf) +rb_thread_blocking_region( + VALUE(*func)(rb_thread_t *th, void *), void *data, + rb_unblock_function_t *ubf) { VALUE val; rb_thread_t *th = GET_THREAD(); - - GVL_UNLOCK_RANGE({ + + BLOCKING_REGION({ val = func(th, data); }, ubf); - + return val; } - /* * call-seq: * Thread.pass => nil @@ -1661,7 +1660,7 @@ do_select(int n, fd_set *read, fd_set *write, fd_set *except, if (write) orig_write = *write; if (except) orig_except = *except; - GVL_UNLOCK_RANGE({ + BLOCKING_REGION({ result = select(n, read, write, except, wait); if (result < 0) lerrno = errno; }, 0); @@ -1673,7 +1672,7 @@ do_select(int n, fd_set *read, fd_set *write, fd_set *except, wait = &wait_100ms; } while (timeout == 0 || subst(timeout, &wait_100ms)); #else - GVL_UNLOCK_RANGE({ + BLOCKING_REGION({ result = select(n, read, write, except, timeout); if (result < 0) lerrno = errno; }, ubf_select); -- cgit