This API acts on a task's individual watchdog timer which limits the execution time of the calling task. This API can be used for any of the following purposes:
Initiate a watch dog timer for a task which did not previously have any watchdog time-limit established.
Deactivate the task's existing watchdog time limit.
Strobe the task's watch dog timer so that this task will be granted another period of execution.
Adjust the time period of an existing watchdog timer and reset this down counter to the full count for another full period before time-out occurs.
When a task's watchdog time limit expires, then this is treated as a fault. The task will be killed unless a TryDejavu() exception handler was in place at the time of the exception.
Tasks may optionaly be created with execution time limits. Use of this watchdog time limiting functionality is not compatible with task time slicing. Use of one precludes use of the other. If this API is called for a task which was previously time-sliced, then this task will no longer be time-sliced.
|delayTime ||Three possibilities:|
Negative value - Task's watchdog timer will be deactivated.
Zero - Watchdog one-shot starts new down count from an existing stored execution time limit for this task.
Postive value - New watchdog time out value in milliseconds. The maximum permissible settting is around 65 seconds. Any values about this limit will be reduced by this API to this limit.
- Read out from the CPU's decrementer, indicating how much time was left on this task's execution time limiter. This decrementer counter runs at the same rate as the system time base.
- See also:
- Not available in SC1x, SC2x and SC1x3 systems
- SC2x3 V1.00 - CLIB V1.00