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

Side by Side Diff: base/profiler/alternate_timer.h

Issue 10834199: Enable memory profiler on Linux when TC_MALLOC is enabled. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 4 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | content/app/content_main_runner.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) 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 // This is a glue file, which allows third party code to call into our profiler 5 // This is a glue file, which allows third party code to call into our profiler
6 // without having to include most any functions from base. 6 // without having to include most any functions from base.
7 7
8 #ifndef BASE_PROFILER_ALTERNATE_TIMER_H_ 8 #ifndef BASE_PROFILER_ALTERNATE_TIMER_H_
9 #define BASE_PROFILER_ALTERNATE_TIMER_H_ 9 #define BASE_PROFILER_ALTERNATE_TIMER_H_
10 10
11 #include "base/base_export.h" 11 #include "base/base_export.h"
12 12
13 namespace tracked_objects { 13 namespace tracked_objects {
14 14
15 enum TimeSourceType { 15 enum TimeSourceType {
16 TIME_SOURCE_TYPE_WALL_TIME, 16 TIME_SOURCE_TYPE_WALL_TIME,
17 TIME_SOURCE_TYPE_TCMALLOC 17 TIME_SOURCE_TYPE_TCMALLOC
18 }; 18 };
19 19
20 // Provide type for an alternate timer function. 20 // Provide type for an alternate timer function.
21 typedef unsigned int NowFunction(); 21 typedef unsigned int NowFunction();
22 22
23 // Environment variable name that is used to activate alternate timer profiling 23 // Environment variable name that is used to activate alternate timer profiling
24 // (such as using TCMalloc allocations to provide a pseudo-timer) for tasks 24 // (such as using TCMalloc allocations to provide a pseudo-timer) for tasks
25 // instead of wall clock profiling. 25 // instead of wall clock profiling.
26 extern const char kAlternateProfilerTime[]; 26 BASE_EXPORT extern const char kAlternateProfilerTime[];
27 27
28 // Set an alternate timer function to replace the OS time function when 28 // Set an alternate timer function to replace the OS time function when
29 // profiling. Typically this is called by an allocator that is providing a 29 // profiling. Typically this is called by an allocator that is providing a
30 // function that indicates how much memory has been allocated on any given 30 // function that indicates how much memory has been allocated on any given
31 // thread. 31 // thread.
32 void SetAlternateTimeSource(NowFunction* now_function, TimeSourceType type); 32 BASE_EXPORT void SetAlternateTimeSource(NowFunction* now_function,
33 TimeSourceType type);
33 34
34 // Gets the pointer to a function that was set via SetAlternateTimeSource(). 35 // Gets the pointer to a function that was set via SetAlternateTimeSource().
35 // Returns NULL if no set was done prior to calling GetAlternateTimeSource. 36 // Returns NULL if no set was done prior to calling GetAlternateTimeSource.
36 NowFunction* GetAlternateTimeSource(); 37 NowFunction* GetAlternateTimeSource();
37 38
38 // Returns the type of the currently set time source. 39 // Returns the type of the currently set time source.
39 BASE_EXPORT TimeSourceType GetTimeSourceType(); 40 BASE_EXPORT TimeSourceType GetTimeSourceType();
40 41
41 } // namespace tracked_objects 42 } // namespace tracked_objects
42 43
43 #endif // BASE_PROFILER_ALTERNATE_TIMER_H_ 44 #endif // BASE_PROFILER_ALTERNATE_TIMER_H_
OLDNEW
« no previous file with comments | « no previous file | content/app/content_main_runner.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698