Chromium Code Reviews| Index: webkit/appcache/appcache_storage_impl.cc |
| =================================================================== |
| --- webkit/appcache/appcache_storage_impl.cc (revision 110360) |
| +++ webkit/appcache/appcache_storage_impl.cc (working copy) |
| @@ -172,8 +172,8 @@ |
| DelegateReferenceVector delegates_; |
| private: |
| - void CallRun(); |
| - void CallRunCompleted(); |
| + void CallRun(base::Time schedule_time); |
|
rvargas (doing something else)
2011/11/17 03:42:05
This should be TimeTicks instead.
michaeln
2011/11/17 03:59:47
Done.
|
| + void CallRunCompleted(base::Time schedule_time); |
| void CallDisableStorage(); |
| scoped_refptr<base::MessageLoopProxy> io_thread_; |
| @@ -184,7 +184,7 @@ |
| DCHECK(io_thread_->BelongsToCurrentThread()); |
| if (storage_->db_thread_->PostTask( |
| FROM_HERE, |
| - base::Bind(&DatabaseTask::CallRun, this))) { |
| + base::Bind(&DatabaseTask::CallRun, this, base::Time::Now()))) { |
| storage_->scheduled_database_tasks_.push_back(this); |
| } else { |
| NOTREACHED() << "The database thread is not running."; |
| @@ -197,9 +197,13 @@ |
| storage_ = NULL; |
| } |
| -void AppCacheStorageImpl::DatabaseTask::CallRun() { |
| +void AppCacheStorageImpl::DatabaseTask::CallRun(base::Time schedule_time) { |
| + AppCacheHistograms::AddTaskQueueTimeSample( |
| + base::Time::Now() - schedule_time); |
| if (!database_->is_disabled()) { |
| + base::Time run_time = base::Time::Now(); |
| Run(); |
| + AppCacheHistograms::AddTaskRunTimeSample(base::Time::Now() - run_time); |
| if (database_->is_disabled()) { |
| io_thread_->PostTask( |
| FROM_HERE, |
| @@ -208,10 +212,13 @@ |
| } |
| io_thread_->PostTask( |
| FROM_HERE, |
| - base::Bind(&DatabaseTask::CallRunCompleted, this)); |
| + base::Bind(&DatabaseTask::CallRunCompleted, this, base::Time::Now())); |
| } |
| -void AppCacheStorageImpl::DatabaseTask::CallRunCompleted() { |
| +void AppCacheStorageImpl::DatabaseTask::CallRunCompleted( |
| + base::Time schedule_time) { |
| + AppCacheHistograms::AddTaskCompletionTimeSample( |
| + base::Time::Now() - schedule_time); |
| if (storage_) { |
| DCHECK(io_thread_->BelongsToCurrentThread()); |
| DCHECK(storage_->scheduled_database_tasks_.front() == this); |
| @@ -849,6 +856,8 @@ |
| } |
| } |
| + // TODO(michaeln): Also lookup matches in intercept namespaces. |
| + // http://code.google.com/p/chromium/issues/detail?id=101565 |
| if (FindExactMatch(preferred_cache_id) || |
| FindFallback(preferred_cache_id)) { |
| // We found something. |