void fluke_task_destroy(fluke_task_t *task);
Destroys an active task created with fluke_task_create. All mapping objects targeting this task are detached and become effectively useless. Likewise, all region objects originating from this task are detached and all virtual address translations derived from the region are invalidated. Threads executing in the task are not automatically destroyed, but their task references become null and they stop running immediately since they have no address space in which to execute.
- task
- The task to destroy.
If any of the following errors is detected by the Fluke implementation, it causes the current thread to take a synchronous exception with one of the following codes. All of these have an implicit FLUKE_INSANITY_ prefix.
- NO_OBJECT
- task does not point to an active object.
- NOT_TASK
- The object pointed to by task is not a task object.
- INVALID_OBJECT
- The state of the task object has become invalid.
fluke_task_create