如何阅读和识别 ANR 崩溃的根本原因

时间:2021-07-25 07:43:08

标签: java android android-anr-dialog

我们已经构建了一个电视应用程序,我们发现在使用应用程序 5-10 分钟后,它变得非常缓慢并最终因 ANR 而崩溃。

我可以访问 ANR 崩溃日志,但我无法理解它。每次

DALVIK THREADS (203):
"main" prio=5 tid=1 Suspended 

指向不同的堆栈跟踪。

DALVIK THREADS (203):
"main" prio=5 tid=1 Suspended
  | group="main" sCount=2 dsCount=0 obj=0x752fa000 self=0xb74ebe98
  | sysTid=31290 nice=-4 cgrp=default sched=0/0 handle=0xb6f4f000
  | state=S schedstat=( 39789962334 15950461028 51629 ) utm=3141 stm=837 core=3 HZ=100
  | stack=0xbe636000-0xbe638000 stackSize=8MB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/31290/stack)
  native: #00 pc 00012ac0  /system/lib/libc.so (syscall+28)
  native: #01 pc 000a98af  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
  native: #02 pc 00229a63  /system/lib/libart.so (_ZN3art6Thread16FullSuspendCheckEv+858)
  native: #03 pc 00282829  /system/lib/libart.so (_ZN3artL12GoToRunnableEPNS_6ThreadE+296)
  native: #04 pc 00087571  /system/lib/libart.so (_ZN3art12JniMethodEndEjPNS_6ThreadE+8)
  native: #05 pc 0026d007  /system/framework/arm/boot.oat (Java_android_graphics_Paint_native_1setTextLocale__JLjava_lang_String_2+130)
  at android.graphics.Paint.native_setTextLocale!(Native method)
  at android.graphics.Paint.setTextLocale(Paint.java:1206)
  at android.graphics.Paint.<init>(Paint.java:437)
  at android.graphics.Paint.<init>(Paint.java:420)
  at android.text.TextPaint.<init>(TextPaint.java:45)
  at android.text.Layout.<init>(Layout.java:152)
  at android.text.StaticLayout.<init>(StaticLayout.java:118)
  at android.widget.TextView.makeSingleLayout(TextView.java:6523)
  at android.widget.TextView.makeNewLayout(TextView.java:6380)
  at android.widget.TextView.checkForRelayout(TextView.java:6919)
  at android.widget.TextView.setText(TextView.java:4131)
  at android.widget.TextView.setText(TextView.java:3989)
  at android.widget.TextView.setText(TextView.java:3964)
  at com.atv.my.tv.android.app.Epg.LinearContentGroupAdapter.setTile(LinearContentGroupAdapter.java:177)
  at com.atv.my.tv.android.app.Epg.LinearContentGroupAdapter.onBindViewHolder(LinearContentGroupAdapter.java:147)
  at androidx.recyclerview.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:7065)
  at androidx.recyclerview.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:7107)
  at androidx.recyclerview.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:6012)
  at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6279)
  at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6118)
  at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6114)
  at androidx.leanback.widget.GridLayoutManager.getViewForPosition(GridLayoutManager.java:1085)
  at androidx.leanback.widget.GridLayoutManager$2.createItem(GridLayoutManager.java:1613)
  at androidx.leanback.widget.SingleRow.appendVisibleItems(SingleRow.java:113)
  at androidx.leanback.widget.Grid.appendOneColumnVisibleItems(Grid.java:389)
  at androidx.leanback.widget.GridLayoutManager.appendOneColumnVisibleItems(GridLayoutManager.java:1839)
  at androidx.leanback.widget.GridLayoutManager.onLayoutChildren(GridLayoutManager.java:2276)
  at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4134)
  at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
  at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
  at android.view.View.layout(View.java:16081)
  at android.view.ViewGroup.layout(ViewGroup.java:5051)
  at androidx.constraintlayout.widget.ConstraintLayout.onLayout(ConstraintLayout.java:1915)
  at android.view.View.layout(View.java:16081)
  at android.view.ViewGroup.layout(ViewGroup.java:5051)
  at androidx.recyclerview.widget.RecyclerView$LayoutManager.layoutDecoratedWithMargins(RecyclerView.java:9587)
  at androidx.leanback.widget.GridLayoutManager.layoutChild(GridLayoutManager.java:1776)
  at androidx.leanback.widget.GridLayoutManager$2.addItem(GridLayoutManager.java:1698)
  at androidx.leanback.widget.SingleRow.appendVisibleItems(SingleRow.java:126)
  at androidx.leanback.widget.Grid.appendVisibleItems(Grid.java:397)
  at androidx.leanback.widget.GridLayoutManager.appendVisibleItems(GridLayoutManager.java:1934)
  at androidx.leanback.widget.GridLayoutManager.onLayoutChildren(GridLayoutManager.java:2291)
  at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4134)
  at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
  at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
  at android.view.View.layout(View.java:16081)
  at android.view.ViewGroup.layout(ViewGroup.java:5051)
  at androidx.constraintlayout.widget.ConstraintLayout.onLayout(ConstraintLayout.java:1915)
  at android.view.View.layout(View.java:16081)
  at android.view.ViewGroup.layout(ViewGroup.java:5051)
  at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
  at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
  at android.view.View.layout(View.java:16081)
  at android.view.ViewGroup.layout(ViewGroup.java:5051)
  at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
  at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
  at android.view.View.layout(View.java:16081)
  at android.view.ViewGroup.layout(ViewGroup.java:5051)
  at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)
  at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)
  at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)
  at android.view.View.layout(View.java:16081)
  at android.view.ViewGroup.layout(ViewGroup.java:5051)
  at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
  at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
  at android.view.View.layout(View.java:16081)
  at android.view.ViewGroup.layout(ViewGroup.java:5051)
  at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2122)
  at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1879)
  at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1090)
  at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5987)
  at android.view.Choreographer$CallbackRecord.run(Choreographer.java:781)
  at android.view.Choreographer.doCallbacks(Choreographer.java:592)
  at android.view.Choreographer.doFrame(Choreographer.java:560)
  at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:767)
  at android.os.Handler.handleCallback(Handler.java:739)
  at android.os.Handler.dispatchMessage(Handler.java:95)
  at android.os.Looper.loop(Looper.java:135)
  at android.app.ActivityThread.main(ActivityThread.java:5604)
  at java.lang.reflect.Method.invoke!(Native method)
  at java.lang.reflect.Method.invoke(Method.java:372)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:984)
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)

"Heap thread pool worker thread 0" prio=5 tid=2 Native (still starting up)
  | group="" sCount=2 dsCount=0 obj=0x0 self=0xb77cc600
  | sysTid=31296 nice=0 cgrp=default sched=0/0 handle=0xb77c1be0
  | state=S schedstat=( 137554227 116625689 245 ) utm=11 stm=2 core=1 HZ=100
  | stack=0xb4999000-0xb499b000 stackSize=1020KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/31296/stack)
  native: #00 pc 00012ac0  /system/lib/libc.so (syscall+28)
  native: #01 pc 000a98af  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
  native: #02 pc 002379b7  /system/lib/libart.so (_ZN3art10ThreadPool7GetTaskEPNS_6ThreadE+50)
  native: #03 pc 0023795f  /system/lib/libart.so (_ZN3art16ThreadPoolWorker3RunEv+54)
  native: #04 pc 0023819d  /system/lib/libart.so (_ZN3art16ThreadPoolWorker8CallbackEPv+52)
  native: #05 pc 00016777  /system/lib/libc.so (_ZL15__pthread_startPv+30)
  native: #06 pc 00014627  /system/lib/libc.so (__start_thread+6)
  (no managed stack frames)

"Heap thread pool worker thread 1" prio=5 tid=3 Native (still starting up)
  | group="" sCount=2 dsCount=0 obj=0x0 self=0xb77cf5d0
  | sysTid=31297 nice=0 cgrp=default sched=0/0 handle=0xb77d0638
  | state=S schedstat=( 118072157 127796996 247 ) utm=9 stm=2 core=0 HZ=100
  | stack=0xb4899000-0xb489b000 stackSize=1020KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/31297/stack)
  native: #00 pc 00012ac0  /system/lib/libc.so (syscall+28)
  native: #01 pc 000a98af  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
  native: #02 pc 002379b7  /system/lib/libart.so (_ZN3art10ThreadPool7GetTaskEPNS_6ThreadE+50)
  native: #03 pc 0023795f  /system/lib/libart.so (_ZN3art16ThreadPoolWorker3RunEv+54)
  native: #04 pc 0023819d  /system/lib/libart.so (_ZN3art16ThreadPoolWorker8CallbackEPv+52)
  native: #05 pc 00016777  /system/lib/libc.so (_ZL15__pthread_startPv+30)
  native: #06 pc 00014627  /system/lib/libc.so (__start_thread+6)
  (no managed stack frames)

"Heap thread pool worker thread 2" prio=5 tid=4 Native (still starting up)
  | group="" sCount=2 dsCount=0 obj=0x0 self=0xb77c3eb8
  | sysTid=31298 nice=0 cgrp=default sched=0/0 handle=0xb77c3130
  | state=S schedstat=( 102204839 159615538 249 ) utm=10 stm=0 core=0 HZ=100
  | stack=0xb4799000-0xb479b000 stackSize=1020KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/31298/stack)
  native: #00 pc 00012ac0  /system/lib/libc.so (syscall+28)
  native: #01 pc 000a98af  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
  native: #02 pc 002379b7  /system/lib/libart.so (_ZN3art10ThreadPool7GetTaskEPNS_6ThreadE+50)
  native: #03 pc 0023795f  /system/lib/libart.so (_ZN3art16ThreadPoolWorker3RunEv+54)
  native: #04 pc 0023819d  /system/lib/libart.so (_ZN3art16ThreadPoolWorker8CallbackEPv+52)
  native: #05 pc 00016777  /system/lib/libc.so (_ZL15__pthread_startPv+30)
  native: #06 pc 00014627  /system/lib/libc.so (__start_thread+6)
  (no managed stack frames)

"Signal Catcher" daemon prio=5 tid=5 Runnable
  | group="system" sCount=1 dsCount=0 obj=0x12c9d0a0 self=0xb77d0e78
  | sysTid=31299 nice=0 cgrp=default sched=0/0 handle=0xb77ceb60
  | state=R schedstat=( 559358749 42541708 435 ) utm=20 stm=35 core=0 HZ=100
  | stack=0xb468f000-0xb4691000 stackSize=1012KB
  | held mutexes= "thread list lock" "mutator lock"(exclusive held)
  native: #00 pc 00004eac  /system/lib/libbacktrace_libc++.so (_ZN13UnwindCurrent6UnwindEjP8ucontext+23)
  native: #01 pc 0000362d  /system/lib/libbacktrace_libc++.so (_ZN9Backtrace6UnwindEjP8ucontext+8)
  native: #02 pc 002493bd  /system/lib/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiPKcPNS_6mirror9ArtMethodE+68)
  native: #03 pc 0022d6d7  /system/lib/libart.so (_ZNK3art6Thread4DumpERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEE+146)
  native: #04 pc 002369fb  /system/lib/libart.so (_ZN3art10ThreadList14DumpForSigQuitERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEE+142)
  native: #05 pc 0021c363  /system/lib/libart.so (_ZN3art7Runtime14DumpForSigQuitERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEE+66)
  native: #06 pc 002224e1  /system/lib/libart.so (_ZN3art13SignalCatcher13HandleSigQuitEv+804)
  native: #07 pc 00222baf  /system/lib/libart.so (_ZN3art13SignalCatcher3RunEPv+318)
  native: #08 pc 00016777  /system/lib/libc.so (_ZL15__pthread_startPv+30)
  native: #09 pc 00014627  /system/lib/libc.so (__start_thread+6)
  (no managed stack frames)

"ReferenceQueueDaemon" daemon prio=5 tid=6 Waiting
  | group="system" sCount=2 dsCount=0 obj=0x12c5fbe0 self=0xb77d1560
  | sysTid=31300 nice=0 cgrp=default sched=0/0 handle=0xb77d1b58
  | state=S schedstat=( 423463332 443475143 2304 ) utm=24 stm=18 core=3 HZ=100
  | stack=0xb4587000-0xb4589000 stackSize=1036KB
  | held mutexes=
  at java.lang.Object.wait!(Native method)
  - waiting on <0x08f35cd3> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
  at java.lang.Daemons$ReferenceQueueDaemon.run(Daemons.java:135)
  - locked <0x08f35cd3> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
  at java.lang.Thread.run(Thread.java:818)

"FinalizerWatchdogDaemon" daemon prio=5 tid=7 Waiting
  | group="system" sCount=2 dsCount=0 obj=0x12c5fca0 self=0xb77d2740
  | sysTid=31302 nice=0 cgrp=default sched=0/0 handle=0xb77d2d60
  | state=S schedstat=( 11571535 34878922 74 ) utm=1 stm=0 core=2 HZ=100
  | stack=0xb05bb000-0xb05bd000 stackSize=1036KB
  | held mutexes=
  at java.lang.Object.wait!(Native method)
  - waiting on <0x14190010> (a java.lang.Daemons$FinalizerWatchdogDaemon)
  at java.lang.Daemons$FinalizerWatchdogDaemon.waitForObject(Daemons.java:241)
  - locked <0x14190010> (a java.lang.Daemons$FinalizerWatchdogDaemon)
  at java.lang.Daemons$FinalizerWatchdogDaemon.run(Daemons.java:213)
  at java.lang.Thread.run(Thread.java:818)

"FinalizerDaemon" daemon prio=5 tid=8 Waiting
  | group="system" sCount=2 dsCount=0 obj=0x12c5fc40 self=0xb77d1f00
  | sysTid=31301 nice=0 cgrp=default sched=0/0 handle=0xb77d24f8
  | state=S schedstat=( 1658864030 1444659842 3143 ) utm=113 stm=52 core=3 HZ=100
  | stack=0xb447f000-0xb4481000 stackSize=1036KB
  | held mutexes=
  at java.lang.Object.wait!(Native method)
  - waiting on <0x090a1709> (a java.lang.ref.ReferenceQueue)
  at java.lang.Object.wait(Object.java:422)
  at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:101)
  - locked <0x090a1709> (a java.lang.ref.ReferenceQueue)
  at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:72)
  at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:175)
  at java.lang.Thread.run(Thread.java:818)

"GCDaemon" daemon prio=5 tid=9 WaitingPerformingGc
  | group="system" sCount=1 dsCount=0 obj=0x12c5fd60 self=0xb77d3b10
  | sysTid=31304 nice=0 cgrp=default sched=0/0 handle=0xb77d4148
  | state=S schedstat=( 25066316857 18620691443 24845 ) utm=2160 stm=346 core=0 HZ=100
  | stack=0xa3974000-0xa3976000 stackSize=1036KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/31304/stack)
  native: #00 pc 00012ac4  /system/lib/libc.so (syscall+32)
  native: #01 pc 000a9051  /system/lib/libart.so (_ZN3art17ReaderWriterMutex24ExclusiveLockWithTimeoutEPNS_6ThreadExi+368)
  native: #02 pc 00236e05  /system/lib/libart.so (_ZN3art10ThreadList10SuspendAllEv+244)
  native: #03 pc 0011e975  /system/lib/libart.so (_ZN3art2gc9collector16GarbageCollector11ScopedPauseC2EPS2_+32)
  native: #04 pc 00127895  /system/lib/libart.so (_ZN3art2gc9collector9MarkSweep9RunPhasesEv+172)
  native: #05 pc 0011ee37  /system/lib/libart.so (_ZN3art2gc9collector16GarbageCollector3RunENS0_7GcCauseEb+270)
  native: #06 pc 0013c65f  /system/lib/libart.so (_ZN3art2gc4Heap22CollectGarbageInternalENS0_9collector6GcTypeENS0_7GcCauseEb+1558)
  native: #07 pc 0013db61  /system/lib/libart.so (_ZN3art2gc4Heap12ConcurrentGCEPNS_6ThreadE+48)
  native: #08 pc 000003ef  /system/framework/arm/boot.oat (Java_dalvik_system_VMRuntime_concurrentGC__+82)
  at dalvik.system.VMRuntime.concurrentGC(Native method)
  at java.lang.Daemons$GCDaemon.run(Daemons.java:366)
  at java.lang.Thread.run(Thread.java:818)

"Binder_1" prio=5 tid=10 Native
  | group="main" sCount=2 dsCount=0 obj=0x12cac0a0 self=0xb77d5930
  | sysTid=31305 nice=0 cgrp=default sched=0/0 handle=0xb77d45e0
  | state=S schedstat=( 645734759 1326640864 4146 ) utm=20 stm=44 core=1 HZ=100
  | stack=0xa3778000-0xa377a000 stackSize=1012KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/31305/stack)
  native: #00 pc 0003da2c  /system/lib/libc.so (__ioctl+8)
  native: #01 pc 00043141  /system/lib/libc.so (ioctl+14)
  native: #02 pc 00020f3b  /system/lib/libbinder.so (_ZN7android14IPCThreadState14talkWithDriverEb+138)
  native: #03 pc 00021503  /system/lib/libbinder.so (_ZN7android14IPCThreadState20getAndExecuteCommandEv+6)
  native: #04 pc 00021589  /system/lib/libbinder.so (_ZN7android14IPCThreadState14joinThreadPoolEb+48)
  native: #05 pc 000260d7  /system/lib/libbinder.so (???)
  native: #06 pc 00011639  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+112)
  native: #07 pc 000647d5  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+76)
  native: #08 pc 00011191  /system/lib/libutils.so (???)
  native: #09 pc 00016777  /system/lib/libc.so (_ZL15__pthread_startPv+30)
  native: #10 pc 00014627  /system/lib/libc.so (__start_thread+6)
  (no managed stack frames)

"Binder_2" prio=5 tid=11 Native
  | group="main" sCount=2 dsCount=0 obj=0x12cb30a0 self=0xb77d6610
  | sysTid=31306 nice=0 cgrp=default sched=0/0 handle=0xb77d63c8
  | state=S schedstat=( 663834528 1419387047 4156 ) utm=19 stm=47 core=0 HZ=100
  | stack=0xa367a000-0xa367c000 stackSize=1012KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/31306/stack)
  native: #00 pc 00012ac0  /system/lib/libc.so (syscall+28)
  native: #01 pc 000a98af  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
  native: #02 pc 001a770b  /system/lib/libart.so (_ZN3art3JNI18CallBooleanMethodVEP7_JNIEnvP8_jobjectP10_jmethodIDSt9__va_list+962)
  native: #03 pc 00089c31  /system/lib/libandroid_runtime.so (???)
  native: #04 pc 0008d2fb  /system/lib/libandroid_runtime.so (???)
  native: #05 pc 0001c19d  /system/lib/libbinder.so (_ZN7android7BBinder8transactEjRKNS_6ParcelEPS1_j+60)
  native: #06 pc 00021331  /system/lib/libbinder.so (_ZN7android14IPCThreadState14executeCommandEi+592)
  native: #07 pc 00021523  /system/lib/libbinder.so (_ZN7android14IPCThreadState20getAndExecuteCommandEv+38)
  native: #08 pc 00021589  /system/lib/libbinder.so (_ZN7android14IPCThreadState14joinThreadPoolEb+48)
  native: #09 pc 000260d7  /system/lib/libbinder.so (???)
  native: #10 pc 00011639  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+112)
  native: #11 pc 000647d5  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+76)
  native: #12 pc 00011191  /system/lib/libutils.so (???)
  native: #13 pc 00016777  /system/lib/libc.so (_ZL15__pthread_startPv+30)
  native: #14 pc 00014627  /system/lib/libc.so (__start_thread+6)
  (no managed stack frames)

"HeapTrimmerDaemon" daemon prio=5 tid=12 Waiting
  | group="system" sCount=2 dsCount=0 obj=0x12c5fd00 self=0xb77d3128
  | sysTid=31303 nice=0 cgrp=default sched=0/0 handle=0xb77d3748
  | state=S schedstat=( 96878071 116168003 205 ) utm=3 stm=6 core=1 HZ=100
  | stack=0xa3a78000-0xa3a7a000 stackSize=1036KB
  | held mutexes=
  at java.lang.Object.wait!(Native method)
  - waiting on <0x0646bd0e> (a java.lang.Daemons$HeapTrimmerDaemon)
  at java.lang.Daemons$HeapTrimmerDaemon.run(Daemons.java:331)
  - locked <0x0646bd0e> (a java.lang.Daemons$HeapTrimmerDaemon)
  at java.lang.Thread.run(Thread.java:818)

"PeriodicMetricReporterThread" prio=4 tid=13 TimedWaiting
  | group="main" sCount=2 dsCount=0 obj=0x12c9d1c0 self=0xb7808d60
  | sysTid=31308 nice=10 cgrp=bg_non_interactive sched=0/0 handle=0xb7809248
  | state=S schedstat=( 977460 7625310 7 ) utm=0 stm=0 core=2 HZ=100
  | stack=0x9eac8000-0x9eaca000 stackSize=1036KB
  | held mutexes=
  at java.lang.Object.wait!(Native method)
  - waiting on <0x008cf32f> (a java.lang.Object)
  at java.lang.Thread.parkFor(Thread.java:1220)
  - locked <0x008cf32f> (a java.lang.Object)
  at sun.misc.Unsafe.park(Unsafe.java:299)
  at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:197)
  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2055)
  at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1060)
  at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:776)
  at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1035)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1097)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
  at java.lang.Thread.run(Thread.java:818)

0 个答案:

没有答案