October 2017
Intermediate to advanced
354 pages
9h 28m
English
While removing a timer, special care must be taken as the timer function might be manipulating some dynamically de-allocatable resources. If the resource is released before deactivating the timer, there is a possibility of the timer function being invoked when the resources it operates on do not exist at all, causing data corruption. So to avoid such scenarios, the timer must be stopped before releasing any resources. The following code snippet replicates this situation; RESOURCE_DEALLOCATE() here could be any relevant resource deallocation routine:
...del_timer(&t_obj);RESOURCE_DEALLOCATE();....
This approach, however, is applicable to uni-processor systems only. In an SMP system, it's quite possible that ...