Lots of timers probably don't need to run exactly as specified, for example multi-second timeouts to run garbage collection, or to backup some data. These timers could also specify a tolerance (something like "I can run up to 20% later", or "I can run up to 4s later"). Then the TimerThread (that manages the list of timers, and runs lapsed ones) could coalesce timers for which the range of firing timers have some overlap. The goal is to reduce the number of wake-ups, each of which consumes some energy.
Bug 1783405 Comment 0 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Lots of timers probably don't need to run exactly as specified, for example multi-second timeouts to run garbage collection, or to backup some data. These timers could also specify a tolerance (something like "I can run up to 20% later", or "I can run up to 4s later"). Then the TimerThread (that manages the list of timers, and runs lapsed ones) could coalesce timers for which the range of firing times have some overlap. The goal is to reduce the number of wake-ups, each of which consumes some energy.