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

Unified Diff: content/app/content_main_runner.cc

Issue 10820063: Enable memory profiler when TC_MALLOC is enabled for (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | third_party/tcmalloc/chromium/src/gperftools/malloc_extension.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/app/content_main_runner.cc
===================================================================
--- content/app/content_main_runner.cc (revision 148994)
+++ content/app/content_main_runner.cc (working copy)
@@ -4,6 +4,8 @@
#include "content/public/app/content_main_runner.h"
+#include <stdlib.h>
+
#include "base/allocator/allocator_extension.h"
#include "base/at_exit.h"
#include "base/command_line.h"
@@ -17,6 +19,7 @@
#include "base/metrics/stats_table.h"
#include "base/path_service.h"
#include "base/process_util.h"
+#include "base/profiler/alternate_timer.h"
#include "base/stringprintf.h"
#include "base/string_number_conversions.h"
#include "content/browser/browser_main.h"
@@ -450,6 +453,17 @@
// On windows, we've already set these thunks up in _heap_init()
base::allocator::SetGetStatsFunction(GetStatsThunk);
base::allocator::SetReleaseFreeMemoryFunction(ReleaseFreeMemoryThunk);
+
+ // Provide optional hook for monitoring allocation quantities on a
+ // per-thread basis. Only set the hook if the environment indicates this
+ // needs to be enabled.
+ const char* profiling = getenv(tracked_objects::kAlternateProfilerTime);
+ if (profiling &&
+ (atoi(profiling) == tracked_objects::TIME_SOURCE_TYPE_TCMALLOC)) {
+ tracked_objects::SetAlternateTimeSource(
+ MallocExtension::GetBytesAllocatedOnCurrentThread,
+ tracked_objects::TIME_SOURCE_TYPE_TCMALLOC);
+ }
#endif
// On Android,
« no previous file with comments | « no previous file | third_party/tcmalloc/chromium/src/gperftools/malloc_extension.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698