I found a fair amount of reading about this in the following links:

http://android-developers.blogspot.com/2009/05/painless-threading.html
<http://android-developers.blogspot.com/2009/05/painless-threading.html>
http://stackoverflow.com/questions/704311/android-how-do-i-investigate-an-anr
<http://stackoverflow.com/questions/704311/android-how-do-i-investigate-an-anr>
http://developer.android.com/guide/appendix/faq/commontasks.html#threading

Thanks,

Dan Barnett
Xoise Solutions, Inc.
(516) 469-9430
www.xoise.com



On Wed, Sep 15, 2010 at 8:32 PM, Dan <baseballd...@gmail.com> wrote:

> Hi all,
>
> I've got an application with an alarming number of users reporting
> force closes. I've tested multiple devices numerous times and never
> had this happen, so it's very difficult to test. Luckily, the new
> stack trace reporting features seem to give me an idea, but I am not
> familiar with "ANR keyDispatchingTimedOut" and Google doesn't seem to
> be much help. I can debug when I see the error just fine, but I'm not
> sure what information these stack traces are providing me. Is it just
> saying where each thread "was" when the crash occurred?
>
> Any help would be greatly appreciated - not just by me, but by a lot
> of my users!
>
> Dan
>
>
> Example Trace:
>
> ---------------------------------------------------------------------------------------------------------------------------
>
> DALVIK THREADS:
> "main" prio=5 tid=1 NATIVE
>  | group="main" sCount=1 dsCount=0 s=N obj=0x4001d8c0 self=0xccc8
>  | sysTid=27792 nice=0 sched=0/0 cgrp=default handle=-1345017816
>  | schedstat=( 184875489 298065182 95 )
>  at java.net.InetAddress.getaddrinfo(Native Method)
>  at java.net.InetAddress.lookupHostByName(InetAddress.java:508)
>  at java.net.InetAddress.getAllByNameImpl(InetAddress.java:280)
>  at java.net.InetAddress.getByName(InetAddress.java:310)
>  at java.net.InetSocketAddress.<init>(InetSocketAddress.java:110)
>  at java.net.InetSocketAddress.<init>(InetSocketAddress.java:89)
>  at
>
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:
> 62)
>  at
>
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:
> 88)
>  at
>
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHTTPConnection(HttpURLConnectionImpl.java:
> 927)
>  at
>
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:
> 909)
>  at
>
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:
> 1152)
>  at com.xoise.mancala.Mancala.checkUpdate(Mancala.java:186)
>  at com.xoise.mancala.Mancala.onCreate(Mancala.java:43)
>  at
> android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:
> 1047)
>  at
> android.app.ActivityThread.performLaunchActivity(ActivityThread.java:
> 2627)
>  at
> android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:
> 2679)
>  at android.app.ActivityThread.access$2300(ActivityThread.java:125)
>  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:
> 2033)
>  at android.os.Handler.dispatchMessage(Handler.java:99)
>  at android.os.Looper.loop(Looper.java:123)
>  at android.app.ActivityThread.main(ActivityThread.java:4627)
>  at java.lang.reflect.Method.invokeNative(Native Method)
>  at java.lang.reflect.Method.invoke(Method.java:521)
>  at com.android.internal.os.ZygoteInit
> $MethodAndArgsCaller.run(ZygoteInit.java:868)
>  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
>  at dalvik.system.NativeStart.main(Native Method)
>
> "SoundPool" prio=5 tid=8 NATIVE
>  | group="main" sCount=1 dsCount=0 s=N obj=0x44779df8 self=0x225b18
>  | sysTid=27798 nice=0 sched=0/0 cgrp=default handle=1193848
>  | schedstat=( 366211 18005371 4 )
>  at dalvik.system.NativeStart.run(Native Method)
>
> "SoundPoolThread" prio=5 tid=7 NATIVE
>  | group="main" sCount=1 dsCount=0 s=N obj=0x44779720 self=0x225148
>  | sysTid=27799 nice=0 sched=0/0 cgrp=default handle=1194040
>  | schedstat=( 13824466 69000242 13 )
>  at dalvik.system.NativeStart.run(Native Method)
>
> "Binder Thread #2" prio=5 tid=6 NATIVE
>  | group="main" sCount=1 dsCount=0 s=N obj=0x447696c0 self=0x11fd68
>  | sysTid=27797 nice=0 sched=0/0 cgrp=default handle=1297576
>  | schedstat=( 1434329 7904050 6 )
>  at dalvik.system.NativeStart.run(Native Method)
>
> "Binder Thread #1" prio=5 tid=5 NATIVE
>  | group="main" sCount=1 dsCount=0 s=N obj=0x44764488 self=0x124880
>  | sysTid=27796 nice=0 sched=0/0 cgrp=default handle=1198144
>  | schedstat=( 3723144 5554199 5 )
>  at dalvik.system.NativeStart.run(Native Method)
>
> "Compiler" daemon prio=5 tid=4 VMWAIT
>  | group="system" sCount=1 dsCount=0 s=N obj=0x447632a0 self=0x121930
>  | sysTid=27795 nice=0 sched=0/0 cgrp=default handle=1174160
>  | schedstat=( 1220703 9277344 4 )
>  at dalvik.system.NativeStart.run(Native Method)
>
> "Signal Catcher" daemon prio=5 tid=3 RUNNABLE
>  | group="system" sCount=0 dsCount=0 s=N obj=0x447631e8 self=0x11ede0
>  | sysTid=27794 nice=0 sched=0/0 cgrp=default handle=1208144
>  | schedstat=( 6805420 6011962 4 )
>  at dalvik.system.NativeStart.run(Native Method)
>
> "HeapWorker" daemon prio=5 tid=2 VMWAIT
>  | group="system" sCount=1 dsCount=0 s=N obj=0x431a7b90 self=0x11e950
>  | sysTid=27793 nice=0 sched=0/0 cgrp=default handle=1203280
>  | schedstat=( 16723632 11505128 11 )
>  at dalvik.system.NativeStart.run(Native Method)
>
>
> ---------------------------------------------------------------------------------------------------------------------------

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to