Limitations

When the environment is designed to allow task termination, several assumptions should be followed.

  • Terminable task should not share its local data (on its stack) with other tasks by using message envelopes or insert it to memory classes, because the stack memory become invalid after terminable task’s termination

  • Terminable tasks should not create objects that cannot be released during the task termination

  • Special attention must be paid to the application design, especially communication patterns and recognition between valid/invalid data. Mainly when expecting a response from a task that could be terminated.

  • Once the task is created again, it will probably have a different ID, so any other tasks that depend on the killed task should use the new ID