rt: Change the scheme used for terminating the kernel

Instead of joining on the scheduler threads, instead keep a count of active
schedulers. When there are no more schedulers raise a signal for the main
thread to continue.

This will be required once schedulers can be added and removed from the
running kernel.
This commit is contained in:
Brian Anderson
2012-02-04 14:54:10 -08:00
parent 6eafe5d772
commit f39e64d56a
5 changed files with 58 additions and 11 deletions

View File

@@ -296,6 +296,7 @@ rust_task_thread::create_task(rust_task *spawner, const char *name,
void rust_task_thread::run() {
this->start_main_loop();
sched->release_task_thread();
}
#ifndef _WIN32