diff options
| author | Brian Anderson <banderson@mozilla.com> | 2012-03-30 13:54:37 -0700 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-03-31 19:51:29 -0700 |
| commit | 218dd084697ed2ce58812ef9e69cdc86cb83bcf2 (patch) | |
| tree | 171eaf77a6e1d8c4af168bcb17d2ba02d9f41f83 /src/rt/rust_sched_reaper.cpp | |
| parent | 771c1be6a64225d416ad99a860f1c8d34ce3a18b (diff) | |
| download | rust-218dd084697ed2ce58812ef9e69cdc86cb83bcf2.tar.gz rust-218dd084697ed2ce58812ef9e69cdc86cb83bcf2.zip | |
rt: Introduce rust_sched_reaper
This just moves the responsibility for joining with scheduler threads off to a worker thread. This will be needed when we allow tasks to be scheduled on the main thread.
Diffstat (limited to 'src/rt/rust_sched_reaper.cpp')
| -rw-r--r-- | src/rt/rust_sched_reaper.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/rt/rust_sched_reaper.cpp b/src/rt/rust_sched_reaper.cpp new file mode 100644 index 00000000000..f2897859f23 --- /dev/null +++ b/src/rt/rust_sched_reaper.cpp @@ -0,0 +1,15 @@ +#include "rust_internal.h" +#include "rust_kernel.h" +#include "rust_sched_reaper.h" + +// NB: We're using a very small stack here +const size_t STACK_SIZE = 1024*20; + +rust_sched_reaper::rust_sched_reaper(rust_kernel *kernel) + : rust_thread(STACK_SIZE), kernel(kernel) { +} + +void +rust_sched_reaper::run() { + kernel->wait_for_schedulers(); +} |
