* thread.c (thread_create_core): inherit the priority of creating

thread.  submitted at [ruby-core:11873] by David Flanagan <david AT
  davidflanagan.com>.  [ruby-core:11876]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2007-08-10 14:54:50 +00:00
parent 3660ca5281
commit 9242da9e02
3 changed files with 6 additions and 4 deletions

View File

@ -1,7 +1,8 @@
Fri Aug 10 09:47:32 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
Fri Aug 10 23:54:46 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread_pthread.ci (native_thread_apply_priority): set actually
applied prority. [ruby-core:11876]
* thread.c (thread_create_core): inherit the priority of creating
thread. submitted at [ruby-core:11873] by David Flanagan <david AT
davidflanagan.com>. [ruby-core:11876]
Fri Aug 10 05:12:19 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>

View File

@ -367,6 +367,8 @@ thread_create_core(VALUE klass, VALUE args, VALUE (*fn)(ANYARGS), void *arg)
th->first_func = fn;
th->first_func_arg = arg;
th->priority = GET_THREAD()->priority;
native_mutex_initialize(&th->interrupt_lock);
/* kick thread */
st_insert(th->vm->living_threads, thval, (st_data_t) th->thread_id);

View File

@ -285,7 +285,6 @@ native_thread_apply_priority(rb_thread_t *th)
else if (max > priority) {
priority = min;
}
th->priority = 0 - priority;
sp.sched_priority = priority;
pthread_setschedparam(th->thread_id, policy, &sp);