diff options
author | Andy Stadler <stadler@google.com> | 2012-05-04 14:46:00 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-05-04 14:46:00 -0700 |
commit | c4be1b7e963413c110d8a6ee9fdd4fd7443fb2e0 (patch) | |
tree | 0ce0b1c730264eee33bdaff5d2c30423d4f8ddf1 | |
parent | 2b20212e16afed91881dfb7483f3c59cf1d0ebc4 (diff) | |
parent | 09b45a3ad96379b4181d32f8391f63e9c57dc316 (diff) | |
download | frameworks_base-c4be1b7e963413c110d8a6ee9fdd4fd7443fb2e0.zip frameworks_base-c4be1b7e963413c110d8a6ee9fdd4fd7443fb2e0.tar.gz frameworks_base-c4be1b7e963413c110d8a6ee9fdd4fd7443fb2e0.tar.bz2 |
Merge "Add System Tracing capability to Sync Manager" into jb-dev
-rw-r--r-- | core/java/android/content/AbstractThreadedSyncAdapter.java | 9 | ||||
-rw-r--r-- | core/java/android/os/Trace.java | 1 |
2 files changed, 10 insertions, 0 deletions
diff --git a/core/java/android/content/AbstractThreadedSyncAdapter.java b/core/java/android/content/AbstractThreadedSyncAdapter.java index 6bffed7..bafe67d 100644 --- a/core/java/android/content/AbstractThreadedSyncAdapter.java +++ b/core/java/android/content/AbstractThreadedSyncAdapter.java @@ -21,6 +21,7 @@ import android.os.Bundle; import android.os.IBinder; import android.os.Process; import android.os.RemoteException; +import android.os.Trace; import java.util.HashMap; import java.util.concurrent.atomic.AtomicInteger; @@ -233,9 +234,15 @@ public abstract class AbstractThreadedSyncAdapter { mThreadsKey = toSyncKey(account); } + @Override public void run() { Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND); + // Trace this sync instance. Note, conceptually this should be in + // SyncStorageEngine.insertStartSyncEvent(), but the trace functions require unique + // threads in order to track overlapping operations, so we'll do it here for now. + Trace.traceBegin(Trace.TRACE_TAG_SYNC_MANAGER, mAuthority); + SyncResult syncResult = new SyncResult(); ContentProviderClient provider = null; try { @@ -250,6 +257,8 @@ public abstract class AbstractThreadedSyncAdapter { syncResult.databaseError = true; } } finally { + Trace.traceEnd(Trace.TRACE_TAG_SYNC_MANAGER); + if (provider != null) { provider.release(); } diff --git a/core/java/android/os/Trace.java b/core/java/android/os/Trace.java index 2a45506..05acd63 100644 --- a/core/java/android/os/Trace.java +++ b/core/java/android/os/Trace.java @@ -36,6 +36,7 @@ public final class Trace { public static final long TRACE_TAG_WEBVIEW = 1L << 4; public static final long TRACE_TAG_WINDOW_MANAGER = 1L << 5; public static final long TRACE_TAG_ACTIVITY_MANAGER = 1L << 6; + public static final long TRACE_TAG_SYNC_MANAGER = 1L << 7; private static final long sEnabledTags = nativeGetEnabledTags(); |