Most of the new task processing is now complete.

The task states and how to spawn new tasks has all been sorted out.
All that is left at this point is to handle the thread portion of task
management and to determine how to get messages from the new child
task's completion back to the parent task.
This commit is contained in:
Jason Travis Smith
2016-06-25 05:26:10 -04:00
parent 5d4e3ab9fa
commit bc4ed6d0bc
17 changed files with 632 additions and 91 deletions

View File

@ -1,5 +1,5 @@
/// The different states a Task can go through during its lifetime.
#[derive(Clone, Copy)]
#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord)]
pub enum TaskState
{
/// The state that every Task starts in.
@ -21,13 +21,6 @@ pub enum TaskState
/// and UNKNOWN states.
Waiting,
/// The state a Task is in once it is done processing
/// child tasks, but prior to going back to the PROCESSING state.
///
/// The DONE_WAITING state can only lead to the PROCESSING
/// and UNKNOWN states.
DoneWaiting,
/// The state a Task will be in when it is FINISHED processing
/// and ready to be destroyed.
///
@ -59,11 +52,6 @@ impl TaskState
"Waiting"
}
TaskState::DoneWaiting =>
{
"DoneWaiting"
}
TaskState::Processing =>
{
"Processing"