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

Unified Diff: content/public/android/java/src/org/chromium/content/common/TraceEvent.java

Issue 15927042: Small improvements to Looper Idle tracing (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: andrewhayden comments Created 7 years, 6 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 | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/public/android/java/src/org/chromium/content/common/TraceEvent.java
diff --git a/content/public/android/java/src/org/chromium/content/common/TraceEvent.java b/content/public/android/java/src/org/chromium/content/common/TraceEvent.java
index de75f215f25d69fb130e46c20802e303af1016fe..85954e3f433f467ef244f9c2203345a87c205f7a 100644
--- a/content/public/android/java/src/org/chromium/content/common/TraceEvent.java
+++ b/content/public/android/java/src/org/chromium/content/common/TraceEvent.java
@@ -75,11 +75,9 @@ public class TraceEvent {
@Override
public void println(final String line) {
if (line.startsWith(">")) {
- TraceEvent.begin(DISPATCH_EVENT_NAME, line);
begin(line);
} else {
assert line.startsWith("<");
- TraceEvent.end(DISPATCH_EVENT_NAME);
end(line);
}
}
@@ -104,9 +102,11 @@ public class TraceEvent {
}
private final void begin(final String line) {
+ // Close-out any prior 'idle' period before starting new task.
if (mNumTasksSinceLastIdle == 0) {
TraceEvent.end(IDLE_EVENT_NAME);
}
+ TraceEvent.begin(DISPATCH_EVENT_NAME, line);
mLastWorkStartedAt = SystemClock.elapsedRealtime();
syncIdleMonitoring();
}
@@ -115,31 +115,34 @@ public class TraceEvent {
final long elapsed = SystemClock.elapsedRealtime()
- mLastWorkStartedAt;
if (elapsed > MIN_INTERESTING_DURATION_MILLIS) {
- Log.w(TAG, "observed a task that took "
+ traceAndLog(Log.WARN, "observed a task that took "
+ elapsed + "ms: " + line);
}
+ TraceEvent.end(DISPATCH_EVENT_NAME);
syncIdleMonitoring();
mNumTasksSeen++;
mNumTasksSinceLastIdle++;
}
+ private static void traceAndLog(int level, String message) {
+ TraceEvent.instant("TraceEvent.LooperMonitor:IdleStats", message);
+ Log.println(level, TAG, message);
+ }
+
@Override
public final boolean queueIdle() {
final long now = SystemClock.elapsedRealtime();
if (mLastIdleStartedAt == 0) mLastIdleStartedAt = now;
final long elapsed = now - mLastIdleStartedAt;
mNumIdlesSeen++;
+ TraceEvent.begin(IDLE_EVENT_NAME, mNumTasksSinceLastIdle + " tasks since last idle.");
if (elapsed > MIN_INTERESTING_BURST_DURATION_MILLIS) {
// Dump stats
String statsString = mNumTasksSeen + " tasks and "
+ mNumIdlesSeen + " idles processed so far, "
+ mNumTasksSinceLastIdle + " tasks bursted and "
+ elapsed + "ms elapsed since last idle";
- Log.d(TAG, statsString);
- instant("TraceEvent.LooperMonitor:IdleStats", statsString);
- TraceEvent.begin(IDLE_EVENT_NAME, statsString);
- } else {
- TraceEvent.begin(IDLE_EVENT_NAME);
+ traceAndLog(Log.DEBUG, statsString);
}
mLastIdleStartedAt = now;
mNumTasksSinceLastIdle = 0;
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698