blob: 8c06693a6c9ae2bff1b63260bb903a3f0df9de13 [file] [log] [blame]
license.botbf09a502008-08-24 00:55:551// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
initial.commitd7cae122008-07-26 21:49:384
5#include "base/timer.h"
[email protected]a5b94a92008-08-12 23:25:436
initial.commitd7cae122008-07-26 21:49:387#include "base/message_loop.h"
initial.commitd7cae122008-07-26 21:49:388
[email protected]aeab57ea2008-08-28 20:50:129namespace base {
10
[email protected]aeab57ea2008-08-28 20:50:1211void BaseTimer_Helper::OrphanDelayedTask() {
12 if (delayed_task_) {
13 delayed_task_->timer_ = NULL;
14 delayed_task_ = NULL;
15 }
initial.commitd7cae122008-07-26 21:49:3816}
17
[email protected]aeab57ea2008-08-28 20:50:1218void BaseTimer_Helper::InitiateDelayedTask(TimerTask* timer_task) {
19 OrphanDelayedTask();
initial.commitd7cae122008-07-26 21:49:3820
[email protected]aeab57ea2008-08-28 20:50:1221 delayed_task_ = timer_task;
22 delayed_task_->timer_ = this;
23 MessageLoop::current()->PostDelayedTask(
[email protected]d323a172011-09-02 18:23:0224 timer_task->posted_from_, timer_task,
[email protected]6b175382009-10-13 06:47:4725 static_cast<int>(timer_task->delay_.InMillisecondsRoundedUp()));
initial.commitd7cae122008-07-26 21:49:3826}
27
[email protected]aeab57ea2008-08-28 20:50:1228} // namespace base