Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(148)

Side by Side Diff: base/tracked_objects.cc

Issue 8496008: Revert 108752 - Support tracking of IPC messages as tasks in profiler (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « base/tracked_objects.h ('k') | base/tracked_objects_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/tracked_objects.h" 5 #include "base/tracked_objects.h"
6 6
7 #include <math.h> 7 #include <math.h>
8 8
9 #include "base/format_macros.h" 9 #include "base/format_macros.h"
10 #include "base/message_loop.h" 10 #include "base/message_loop.h"
(...skipping 491 matching lines...) Expand 10 before | Expand all | Expand 10 after
502 Duration run_duration; 502 Duration run_duration;
503 if (!start_of_run.is_null()) { 503 if (!start_of_run.is_null()) {
504 queue_duration = start_of_run - time_posted; 504 queue_duration = start_of_run - time_posted;
505 if (!end_of_run.is_null()) 505 if (!end_of_run.is_null())
506 run_duration = end_of_run - start_of_run; 506 run_duration = end_of_run - start_of_run;
507 } 507 }
508 current_thread_data->TallyADeath(*birth, queue_duration, run_duration); 508 current_thread_data->TallyADeath(*birth, queue_duration, run_duration);
509 } 509 }
510 510
511 // static 511 // static
512 void ThreadData::TallyRunInAScopedRegionIfTracking(
513 const Births* birth,
514 const TrackedTime& start_of_run,
515 const TrackedTime& end_of_run) {
516 if (!kTrackAllTaskObjects)
517 return; // Not compiled in.
518
519 // Even if we have been DEACTIVATED, we will process any pending births so
520 // that our data structures (which counted the outstanding births) remain
521 // consistent.
522 if (!birth)
523 return;
524
525 ThreadData* current_thread_data = Get();
526 if (!current_thread_data)
527 return;
528
529 Duration queue_duration = Duration();
530 Duration run_duration = end_of_run - start_of_run;
531 current_thread_data->TallyADeath(*birth, queue_duration, run_duration);
532 }
533
534
535
536 // static
537 ThreadData* ThreadData::first() { 512 ThreadData* ThreadData::first() {
538 base::AutoLock lock(*list_lock_); 513 base::AutoLock lock(*list_lock_);
539 return all_thread_data_list_head_; 514 return all_thread_data_list_head_;
540 } 515 }
541 516
542 // This may be called from another thread. 517 // This may be called from another thread.
543 void ThreadData::SnapshotBirthMap(BirthMap *output) const { 518 void ThreadData::SnapshotBirthMap(BirthMap *output) const {
544 base::AutoLock lock(lock_); 519 base::AutoLock lock(lock_);
545 for (BirthMap::const_iterator it = birth_map_.begin(); 520 for (BirthMap::const_iterator it = birth_map_.begin();
546 it != birth_map_.end(); ++it) 521 it != birth_map_.end(); ++it)
(...skipping 700 matching lines...) Expand 10 before | Expand all | Expand 10 after
1247 (combined_selectors_ & BIRTH_THREAD) ? "*" : 1222 (combined_selectors_ & BIRTH_THREAD) ? "*" :
1248 sample.birth().birth_thread()->thread_name().c_str(), 1223 sample.birth().birth_thread()->thread_name().c_str(),
1249 (combined_selectors_ & DEATH_THREAD) ? "*" : 1224 (combined_selectors_ & DEATH_THREAD) ? "*" :
1250 sample.DeathThreadName().c_str()); 1225 sample.DeathThreadName().c_str());
1251 sample.birth().location().Write(!(combined_selectors_ & BIRTH_FILE), 1226 sample.birth().location().Write(!(combined_selectors_ & BIRTH_FILE),
1252 !(combined_selectors_ & BIRTH_FUNCTION), 1227 !(combined_selectors_ & BIRTH_FUNCTION),
1253 output); 1228 output);
1254 } 1229 }
1255 1230
1256 } // namespace tracked_objects 1231 } // namespace tracked_objects
OLDNEW
« no previous file with comments | « base/tracked_objects.h ('k') | base/tracked_objects_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698