diff options
| author | Michael Bebenita <[email protected]> | 2010-07-28 16:24:50 -0700 |
|---|---|---|
| committer | Graydon Hoare <[email protected]> | 2010-07-28 20:30:29 -0700 |
| commit | 4ff8e15128f90d4e9e57897c48280c6f82bb8343 (patch) | |
| tree | 86c3808e729b4f596c3c23e228738d3d25b108bc /src/rt/rust_task.h | |
| parent | Rename rust_proxy_delegate to maybe_proxy, flesh out logic in it. Add strong-... (diff) | |
| download | rust-4ff8e15128f90d4e9e57897c48280c6f82bb8343.tar.xz rust-4ff8e15128f90d4e9e57897c48280c6f82bb8343.zip | |
Move notification-messages out into their own file and unify into notify_message, make them use proxies, cache task proxies in dom.
Diffstat (limited to 'src/rt/rust_task.h')
| -rw-r--r-- | src/rt/rust_task.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/rt/rust_task.h b/src/rt/rust_task.h index 0c723a9d..34553b6c 100644 --- a/src/rt/rust_task.h +++ b/src/rt/rust_task.h @@ -4,6 +4,10 @@ #ifndef RUST_TASK_H #define RUST_TASK_H + +#include "util/array_list.h" + + struct rust_task : public maybe_proxy<rust_task>, public dom_owned<rust_task> @@ -35,6 +39,9 @@ rust_task : public maybe_proxy<rust_task>, // that location before waking us up. uintptr_t* rendezvous_ptr; + // List of tasks waiting for this task to finish. + array_list<maybe_proxy<rust_task> *> tasks_waiting_to_join; + rust_alarm alarm; rust_task(rust_dom *dom, @@ -95,6 +102,7 @@ rust_task : public maybe_proxy<rust_task>, // Notify tasks waiting for us that we are about to die. void notify_waiting_tasks(); + void notify_tasks_waiting_to_join(); uintptr_t get_fp(); uintptr_t get_previous_fp(uintptr_t fp); |