rt: Delete schedulers immediately upon release

This will be needed once we support dynamically changing schedulers.
This commit is contained in:
Brian Anderson
2012-02-04 23:42:27 -08:00
parent f39e64d56a
commit c76b81cddf
3 changed files with 6 additions and 5 deletions
+1 -4
View File
@@ -21,10 +21,6 @@ rust_kernel::rust_kernel(rust_srv *srv, size_t num_threads) :
live_schedulers = 1;
}
rust_kernel::~rust_kernel() {
delete sched;
}
void
rust_kernel::log(uint32_t level, char const *fmt, ...) {
char buf[BUF_BYTES];
@@ -83,6 +79,7 @@ void
rust_kernel::release_scheduler() {
I(this, !sched_lock.lock_held_by_current_thread());
scoped_lock with(sched_lock);
delete sched;
--live_schedulers;
if (live_schedulers == 0) {
// We're all done. Tell the main thread to continue