aboutsummaryrefslogtreecommitdiffstats
path: root/thread.c
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-02-08 12:06:08 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-02-08 12:06:08 +0000
commiteb64061a384db53ca69dfdb1ab184a3b88d68f2d (patch)
treec0e45540b831e747f10544c63cc56e57d89b76ca /thread.c
parentae317b518c4dcbcbf0ed02bb9e6cd7513f0a34fe (diff)
downloadruby-eb64061a384db53ca69dfdb1ab184a3b88d68f2d.tar.gz
* thread.c (GVL_UNLOCK_RANGE): rename to BLOCKING_REGION().
* thread.c (rb_thread_run_parallel): rename to rb_thread_blocking_region(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread.c')
-rw-r--r--thread.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/thread.c b/thread.c
index 770ee1af06..a241a41e2c 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);