From a3544f2edb31acfc1c2fec1e96e88f423e51a57f Mon Sep 17 00:00:00 2001 From: dt Date: Fri, 9 Oct 1998 19:01:30 +0000 Subject: Fix some bugs in pthread scheduler: make pthread_yield() more reliable, threads always (I hope) preempted at least every 0.1 sec, as intended. PR: bin/7744 Submitted by: "Richard Seaman, Jr." --- lib/libpthread/thread/thr_create.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'lib/libpthread/thread/thr_create.c') diff --git a/lib/libpthread/thread/thr_create.c b/lib/libpthread/thread/thr_create.c index c7ddeb2..4169461 100644 --- a/lib/libpthread/thread/thr_create.c +++ b/lib/libpthread/thread/thr_create.c @@ -223,6 +223,9 @@ pthread_create(pthread_t * thread, const pthread_attr_t * attr, void _thread_start(void) { + /* We just left the scheduler via longjmp: */ + _thread_kern_in_sched = 0; + /* Run the current thread's start routine with argument: */ pthread_exit(_thread_run->start_routine(_thread_run->arg)); -- cgit v1.1