bool AdminRequestHandler::handleProfileRequest(const std::string &cmd, Transport *transport) { if (cmd == "prof-exe") { std::map<ThreadInfo::Executing, int> counts; ThreadInfo::GetExecutionSamples(counts); string res = "[ "; for (std::map<ThreadInfo::Executing, int>::const_iterator iter = counts.begin(); iter != counts.end(); ++iter) { res += lexical_cast<string>(iter->first) + ", " + lexical_cast<string>(iter->second) + ", "; } res += "-1 ]"; transport->sendString(res); return true; } #ifdef GOOGLE_CPU_PROFILER if (handleCPUProfilerRequest(cmd, transport)) { return true; } #endif #ifdef GOOGLE_HEAP_PROFILER if (handleHeapProfilerRequest(cmd, transport)) { return true; } #endif return false; }
bool AdminRequestHandler::handleProfileRequest(const std::string &cmd, Transport *transport) { #ifdef GOOGLE_CPU_PROFILER if (handleCPUProfilerRequest(cmd, transport)) { return true; } #endif #ifdef GOOGLE_HEAP_PROFILER if (handleHeapProfilerRequest(cmd, transport)) { return true; } #endif return false; }