Reduce the number of delayed tasks on chromium run loop
Previously if there were N distinct delayed times for dealyed tasks
posted to the scheduler, there would be N delayed tasks posted on the
chromium run loop. We only really need to post timers for the next
delayed task. This patch implements that. Caveat: because it's not
possible to cancel tasks posted to the chromium runloop, we will still
have more than one task outstanding if delayed tasks get posted in
reverse order.
BUG=510398, 546953
Review URL: https://codereview.chromium.org/1468443002
Cr-Commit-Position: refs/heads/master@{#361086}
10 files changed