diff options
| author | Jeff Brown <jeffbrown@google.com> | 2013-10-17 19:28:23 -0700 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2013-10-17 19:28:23 -0700 |
| commit | b1eb620219de034b28a0130b07ca05140c4ff830 (patch) | |
| tree | d48fbd5152f63d16b4c52ca4b6894436ebe62fbb /core/java/android/os/MessageQueue.java | |
| parent | edc0cef287c7d0b9e179abf0e6eb4e880dc9f408 (diff) | |
| parent | 83bf440440309a394f792e3d8a6acb98197d9d7c (diff) | |
am 83bf4404: am 3e3296e5: am 82f31701: Merge "Log view root, input and looper state in bug reports." into klp-dev
* commit '83bf440440309a394f792e3d8a6acb98197d9d7c':
Log view root, input and looper state in bug reports.
Diffstat (limited to 'core/java/android/os/MessageQueue.java')
| -rw-r--r-- | core/java/android/os/MessageQueue.java | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/core/java/android/os/MessageQueue.java b/core/java/android/os/MessageQueue.java index 159b194e76b4..e90a457c034a 100644 --- a/core/java/android/os/MessageQueue.java +++ b/core/java/android/os/MessageQueue.java @@ -18,6 +18,7 @@ package android.os; import android.util.AndroidRuntimeException; import android.util.Log; +import android.util.Printer; import java.util.ArrayList; @@ -258,6 +259,7 @@ public final class MessageQueue { synchronized (this) { final int token = mNextBarrierToken++; final Message msg = Message.obtain(); + msg.when = when; msg.arg1 = token; Message prev = null; @@ -399,12 +401,16 @@ public final class MessageQueue { boolean isIdling() { synchronized (this) { - // If the loop is quitting then it must not be idling. - // We can assume mPtr != 0 when mQuitting is false. - return !mQuitting && nativeIsIdling(mPtr); + return isIdlingLocked(); } } + private boolean isIdlingLocked() { + // If the loop is quitting then it must not be idling. + // We can assume mPtr != 0 when mQuitting is false. + return !mQuitting && nativeIsIdling(mPtr); + } + void removeMessages(Handler h, int what, Object object) { if (h == null) { return; @@ -543,4 +549,17 @@ public final class MessageQueue { } } } + + void dump(Printer pw, String prefix) { + synchronized (this) { + long now = SystemClock.uptimeMillis(); + int n = 0; + for (Message msg = mMessages; msg != null; msg = msg.next) { + pw.println(prefix + "Message " + n + ": " + msg.toString(now)); + n++; + } + pw.println(prefix + "(Total messages: " + n + ", idling=" + isIdlingLocked() + + ", quitting=" + mQuitting + ")"); + } + } } |
