1. A method comprising: operating a computing device in a first power mode; setting at least one flag, each flag representing a respective one of at least one task being executed on the computing device; detecting a request to place the computing device in a second power mode, wherein the second power mode consumes less system resources than the first power mode; delaying the initiation of the transition of the computing device to the second power mode by placing the computing device in a third power mode that consumes less system resources than the first power mode but more than the second power mode; and while in the third power mode, estimating an amount of system resources required for each of the at least one task, determining if the total estimated amount of system resources to complete each of the at least one task exceeds one or more system resource threshold values, and if the estimated total amount of system resources exceeds the one or more system resource threshold values, ceasing execution of the at least one task.