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

Side by Side Diff: base/tracked_objects.h

Issue 2133083002: Remove all remaining traces of MessageLoopProxy. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 months 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef BASE_TRACKED_OBJECTS_H_ 5 #ifndef BASE_TRACKED_OBJECTS_H_
6 #define BASE_TRACKED_OBJECTS_H_ 6 #define BASE_TRACKED_OBJECTS_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <map> 10 #include <map>
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
167 // not the underlying and ongoing statistic). In contrast, pointer data that 167 // not the underlying and ongoing statistic). In contrast, pointer data that
168 // is accessed during snapshotting is completely invariant, and hence is 168 // is accessed during snapshotting is completely invariant, and hence is
169 // perfectly acquired (i.e., no potential corruption, and no risk of a bad 169 // perfectly acquired (i.e., no potential corruption, and no risk of a bad
170 // memory reference). 170 // memory reference).
171 // 171 //
172 // TODO(jar): We can implement a Snapshot system that *tries* to grab the 172 // TODO(jar): We can implement a Snapshot system that *tries* to grab the
173 // snapshots on the source threads *when* they have MessageLoops available 173 // snapshots on the source threads *when* they have MessageLoops available
174 // (worker threads don't have message loops generally, and hence gathering from 174 // (worker threads don't have message loops generally, and hence gathering from
175 // them will continue to be asynchronous). We had an implementation of this in 175 // them will continue to be asynchronous). We had an implementation of this in
176 // the past, but the difficulty is dealing with message loops being terminated. 176 // the past, but the difficulty is dealing with message loops being terminated.
177 // We can *try* to spam the available threads via some message loop proxy to 177 // We can *try* to spam the available threads via some task runner to
178 // achieve this feat, and it *might* be valuable when we are collecting data 178 // achieve this feat, and it *might* be valuable when we are collecting data
179 // for upload via UMA (where correctness of data may be more significant than 179 // for upload via UMA (where correctness of data may be more significant than
180 // for a single screen of about:profiler). 180 // for a single screen of about:profiler).
181 // 181 //
182 // TODO(jar): We need to store DataCollections, and provide facilities for 182 // TODO(jar): We need to store DataCollections, and provide facilities for
183 // taking the difference between two gathered DataCollections. For now, we're 183 // taking the difference between two gathered DataCollections. For now, we're
184 // just adding a hack that Reset()s to zero all counts and stats. This is also 184 // just adding a hack that Reset()s to zero all counts and stats. This is also
185 // done in a slightly thread-unsafe fashion, as the resetting is done 185 // done in a slightly thread-unsafe fashion, as the resetting is done
186 // asynchronously relative to ongoing updates (but all data is 32 bit in size). 186 // asynchronously relative to ongoing updates (but all data is 32 bit in size).
187 // For basic profiling, this will work "most of the time," and should be 187 // For basic profiling, this will work "most of the time," and should be
(...skipping 623 matching lines...) Expand 10 before | Expand all | Expand 10 after
811 ProcessDataSnapshot(const ProcessDataSnapshot& other); 811 ProcessDataSnapshot(const ProcessDataSnapshot& other);
812 ~ProcessDataSnapshot(); 812 ~ProcessDataSnapshot();
813 813
814 PhasedProcessDataSnapshotMap phased_snapshots; 814 PhasedProcessDataSnapshotMap phased_snapshots;
815 base::ProcessId process_id; 815 base::ProcessId process_id;
816 }; 816 };
817 817
818 } // namespace tracked_objects 818 } // namespace tracked_objects
819 819
820 #endif // BASE_TRACKED_OBJECTS_H_ 820 #endif // BASE_TRACKED_OBJECTS_H_
OLDNEW
« no previous file with comments | « android_webview/native/aw_gl_functor.cc ('k') | blimp/engine/app/blimp_system_url_request_context_getter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698