ByteBuffer.allocate()/ByteBuffer.allocateDirect()/JNI DETECTED ERROR IN APPLICATION: jarray was NULL

在Java中当我们要对数据进行更底层的操作时,一般是操作数据的字节(byte)形式,这时经常会用到ByteBuffer这样一个类。ByteBuffer提供了两种静态实例方式:

    public static ByteBuffer allocate(int capacity)  
    public static ByteBuffer allocateDirect(int capacity)  

为什么要提供两种方式呢?这与Java的内存使用机制有关。第一种分配方式产生的内存开销是在JVM中的,而另外一种的分配方式产生的开销在JVM之外,以就是系统级的内存分配。当Java程序接收到外部传来的数据时,首先是被系统内存所获取,然后在由系统内存复制复制到JVM内存中供Java程序使用。所以在另外一种分配方式中,能够省去复制这一步操作,效率上会有所提高。可是系统级内存的分配比起JVM内存的分配要耗时得多,所以并非不论什么时候allocateDirect的操作效率都是最高的。以下是一个不同容量情况下两种分配方式的操作时间对照:
这里写图片描述

由图能够看出,当操作数据量非常小时,两种分配方式操作使用时间基本是同样的,第一种方式有时可能会更快,可是当数据量非常大时,另外一种方式会远远大于第一种的分配方式。

导致以下错误的原因在于:
JNI调用C方法自然是使用系统内存。
public static ByteBuffer allocate(int capacity)方法在JVM创建的缓冲区C方法是读不到的。
所以必须使用
public static ByteBuffer allocateDirect(int capacity)在系统内存中操作我们的数据。
正式由于C方法读不到JVM中的我们写入的数据,才会导致报jarray was NULL

06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65] JNI DETECTED ERROR IN APPLICATION: jarray was NULL
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]     in call to GetPrimitiveArrayCritical
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]     from void com.google.android.gles_jni.GLImpl.glDrawElements(int, int, int, java.nio.Buffer)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65] "GLThread 1977" prio=5 tid=18 Runnable
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   | group="main" sCount=0 dsCount=0 obj=0x12df5cf0 self=0xa3db1400
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   | sysTid=9431 nice=0 cgrp=default sched=0/0 handle=0xa3d72300
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   | state=R schedstat=( 6864840 8233024 28 ) utm=0 stm=0 core=0 HZ=100
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   | stack=0xa123b000-0xa123d000 stackSize=1036KB
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   | held mutexes= "mutator lock"(shared held)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   native: #00 pc 000047e0  /system/lib/libbacktrace_libc++.so (_ZN13UnwindCurrent6UnwindEjP8ucontext+23)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   native: #01 pc 00002ff9  /system/lib/libbacktrace_libc++.so (_ZN9Backtrace6UnwindEjP8ucontext+8)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   native: #02 pc 00244051  /system/lib/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiPKcPNS_6mirror9ArtMethodE+68)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   native: #03 pc 00228375  /system/lib/libart.so (_ZNK3art6Thread4DumpERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEE+144)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   native: #04 pc 000b006b  /system/lib/libart.so (_ZN3artL8JniAbortEPKcS1_+582)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   native: #05 pc 000b07b1  /system/lib/libart.so (_ZN3art9JniAbortFEPKcS1_z+60)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   native: #06 pc 000b2fc1  /system/lib/libart.so (_ZN3art11ScopedCheck5CheckEbPKcz.constprop.129+1784)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   native: #07 pc 000bd5db  /system/lib/libart.so (_ZN3art8CheckJNI25GetPrimitiveArrayCriticalEP7_JNIEnvP7_jarrayPh+50)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   native: #08 pc 000591b4  /system/lib/libandroid_runtime.so (???)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   native: #09 pc 009102c5  /data/dalvik-cache/arm/system@framework@boot.oat (Java_com_google_android_gles_1jni_GLImpl_glDrawElements__IIILjava_nio_Buffer_2+128)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   at com.google.android.gles_jni.GLImpl.glDrawElements(Native method)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   at com.example.a3d_study_2.No_3_polygon.MyRenderer.onDrawFrame(MyRenderer.java:85)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1522)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65]   at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1239)
06-07 20:04:52.745 A/art: art/runtime/check_jni.cc:65] 
06-07 20:04:52.752 D/OpenGLRenderer: endAllStagingAnimators on 0xa3d48980 (RippleDrawable) with handle 0xa3c03880
06-07 20:04:52.761 I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@1fb6dc35 time:14500632
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289] Runtime aborting...
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289] Aborting thread:
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289] "GLThread 1977" prio=5 tid=18 Native
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x12df5cf0 self=0xa3db1400
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   | sysTid=9431 nice=0 cgrp=default sched=0/0 handle=0xa3d72300
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   | state=R schedstat=( 24570934 24936514 59 ) utm=0 stm=2 core=0 HZ=100
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   | stack=0xa123b000-0xa123d000 stackSize=1036KB
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   | held mutexes= "abort lock" "mutator lock"(shared held)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #00 pc 000047e0  /system/lib/libbacktrace_libc++.so (_ZN13UnwindCurrent6UnwindEjP8ucontext+23)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #01 pc 00002ff9  /system/lib/libbacktrace_libc++.so (_ZN9Backtrace6UnwindEjP8ucontext+8)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #02 pc 00244051  /system/lib/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiPKcPNS_6mirror9ArtMethodE+68)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #03 pc 00228375  /system/lib/libart.so (_ZNK3art6Thread4DumpERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEE+144)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #04 pc 0021761f  /system/lib/libart.so (_ZN3art10AbortState10DumpThreadERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEPNS_6ThreadE+22)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #05 pc 00217885  /system/lib/libart.so (_ZN3art10AbortState4DumpERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEE+364)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #06 pc 00217a51  /system/lib/libart.so (_ZN3art7Runtime5AbortEv+72)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #07 pc 000a654b  /system/lib/libart.so (_ZN3art10LogMessageD1Ev+1322)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #08 pc 000b0259  /system/lib/libart.so (_ZN3artL8JniAbortEPKcS1_+1076)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #09 pc 000b07b1  /system/lib/libart.so (_ZN3art9JniAbortFEPKcS1_z+60)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #10 pc 000b2fc1  /system/lib/libart.so (_ZN3art11ScopedCheck5CheckEbPKcz.constprop.129+1784)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #11 pc 000bd5db  /system/lib/libart.so (_ZN3art8CheckJNI25GetPrimitiveArrayCriticalEP7_JNIEnvP7_jarrayPh+50)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #12 pc 000591b4  /system/lib/libandroid_runtime.so (???)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   native: #13 pc 009102c5  /data/dalvik-cache/arm/system@framework@boot.oat (Java_com_google_android_gles_1jni_GLImpl_glDrawElements__IIILjava_nio_Buffer_2+128)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   at com.google.android.gles_jni.GLImpl.glDrawElements(Native method)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   at com.example.a3d_study_2.No_3_polygon.MyRenderer.onDrawFrame(MyRenderer.java:85)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1522)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289]   at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1239)
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289] Dumping all threads without appropriate locks held: thread list lock mutator lock
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289] All threads:
06-07 20:04:52.973 A/art: art/runtime/runtime.cc:289] DALVIK THREADS (18):
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289] "main" prio=5 tid=1 Native
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x7405f000 self=0xb4828000
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | sysTid=9330 nice=0 cgrp=default sched=0/0 handle=0xb6f97bec
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 694907868 133387906 640 ) utm=66 stm=3 core=0 HZ=100
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | stack=0xbe41a000-0xbe41c000 stackSize=8MB
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #00 pc 0003793c  /system/lib/libc.so (__epoll_pwait+20)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #01 pc 000121a7  /system/lib/libc.so (epoll_pwait+26)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #02 pc 000121b5  /system/lib/libc.so (epoll_wait+6)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #03 pc 00010e37  /system/lib/libutils.so (_ZN7android6Looper9pollInnerEi+98)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #04 pc 00011061  /system/lib/libutils.so (_ZN7android6Looper8pollOnceEiPiS1_PPv+92)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #05 pc 0007e6e1  /system/lib/libandroid_runtime.so (_ZN7android18NativeMessageQueue8pollOnceEP7_JNIEnvi+22)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #06 pc 000b3853  /data/dalvik-cache/arm/system@framework@boot.oat (Java_android_os_MessageQueue_nativePollOnce__JI+102)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   at android.os.MessageQueue.nativePollOnce(Native method)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   at android.os.MessageQueue.next(MessageQueue.java:143)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   at android.os.Looper.loop(Looper.java:125)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   at android.app.ActivityThread.main(ActivityThread.java:5513)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   at java.lang.reflect.Method.invoke!(Native method)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   at java.lang.reflect.Method.invoke(Method.java:372)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:971)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:766)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289] "Heap thread pool worker thread 0" prio=5 tid=2 Native (still starting up)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x0 self=0xaec3f400
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | sysTid=9336 nice=0 cgrp=default sched=0/0 handle=0xb494b600
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 837919 1109372 11 ) utm=0 stm=0 core=0 HZ=100
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | stack=0xb42ee000-0xb42f0000 stackSize=1020KB
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #00 pc 00010480  /system/lib/libc.so (syscall+28)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #01 pc 000a8f0f  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #02 pc 00233257  /system/lib/libart.so (_ZN3art10ThreadPool7GetTaskEPNS_6ThreadE+50)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #03 pc 002331fd  /system/lib/libart.so (_ZN3art16ThreadPoolWorker3RunEv+52)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #04 pc 00233a39  /system/lib/libart.so (_ZN3art16ThreadPoolWorker8CallbackEPv+52)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #05 pc 00013fc3  /system/lib/libc.so (_ZL15__pthread_startPv+30)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #06 pc 00011f0b  /system/lib/libc.so (__start_thread+6)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   (no managed stack frames)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289] "Heap thread pool worker thread 1" prio=5 tid=3 Native (still starting up)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x0 self=0xb4827800
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | sysTid=9337 nice=0 cgrp=default sched=0/0 handle=0xb4949080
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 904113 351513 8 ) utm=0 stm=0 core=0 HZ=100
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | stack=0xb41ee000-0xb41f0000 stackSize=1020KB
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #00 pc 00010480  /system/lib/libc.so (syscall+28)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #01 pc 000a8f0f  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #02 pc 00233257  /system/lib/libart.so (_ZN3art10ThreadPool7GetTaskEPNS_6ThreadE+50)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #03 pc 002331fd  /system/lib/libart.so (_ZN3art16ThreadPoolWorker3RunEv+52)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #04 pc 00233a39  /system/lib/libart.so (_ZN3art16ThreadPoolWorker8CallbackEPv+52)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #05 pc 00013fc3  /system/lib/libc.so (_ZL15__pthread_startPv+30)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #06 pc 00011f0b  /system/lib/libc.so (__start_thread+6)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   (no managed stack frames)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289] "Heap thread pool worker thread 2" prio=5 tid=4 Native (still starting up)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x0 self=0xaec40400
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | sysTid=9338 nice=0 cgrp=default sched=0/0 handle=0xb4949300
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 774950 1763696 7 ) utm=0 stm=0 core=3 HZ=100
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | stack=0xb40ee000-0xb40f0000 stackSize=1020KB
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #00 pc 00010480  /system/lib/libc.so (syscall+28)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #01 pc 000a8f0f  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #02 pc 00233257  /system/lib/libart.so (_ZN3art10ThreadPool7GetTaskEPNS_6ThreadE+50)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #03 pc 002331fd  /system/lib/libart.so (_ZN3art16ThreadPoolWorker3RunEv+52)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #04 pc 00233a39  /system/lib/libart.so (_ZN3art16ThreadPoolWorker8CallbackEPv+52)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #05 pc 00013fc3  /system/lib/libc.so (_ZL15__pthread_startPv+30)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #06 pc 00011f0b  /system/lib/libc.so (__start_thread+6)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   (no managed stack frames)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289] "Signal Catcher" prio=5 tid=5 WaitingInMainSignalCatcherLoop
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x12c000a0 self=0xb4829000
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | sysTid=9339 nice=0 cgrp=default sched=0/0 handle=0xb4949580
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 968854 149532 2 ) utm=0 stm=0 core=1 HZ=100
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | stack=0xb3fe4000-0xb3fe6000 stackSize=1012KB
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #00 pc 00038584  /system/lib/libc.so (__rt_sigtimedwait+12)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #01 pc 00015761  /system/lib/libc.so (sigwait+24)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #02 pc 0021ae9b  /system/lib/libart.so (_ZN3art13SignalCatcher13WaitForSignalEPNS_6ThreadERNS_9SignalSetE+66)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #03 pc 0021c9b1  /system/lib/libart.so (_ZN3art13SignalCatcher3RunEPv+196)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #04 pc 00013fc3  /system/lib/libc.so (_ZL15__pthread_startPv+30)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   native: #05 pc 00011f0b  /system/lib/libc.so (__start_thread+6)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289]   (no managed stack frames)
06-07 20:04:52.974 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289] "JDWP" prio=5 tid=6 WaitingInMainDebuggerLoop
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x12c050a0 self=0xaec41400
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | sysTid=9340 nice=0 cgrp=default sched=0/0 handle=0xb4949800
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 7814842 3455054 21 ) utm=0 stm=0 core=2 HZ=100
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | stack=0xb3ee2000-0xb3ee4000 stackSize=1012KB
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #00 pc 00038ac4  /system/lib/libc.so (__pselect6+20)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #01 pc 0001375b  /system/lib/libc.so (select+60)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #02 pc 002835a7  /system/lib/libart.so (_ZN3art4JDWP12JdwpAdbState15ProcessIncomingEv+186)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #03 pc 0018fa39  /system/lib/libart.so (_ZN3art4JDWP9JdwpState3RunEv+348)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #04 pc 00190f63  /system/lib/libart.so (_ZN3art4JDWPL15StartJdwpThreadEPv+10)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #05 pc 00013fc3  /system/lib/libc.so (_ZL15__pthread_startPv+30)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #06 pc 00011f0b  /system/lib/libc.so (__start_thread+6)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   (no managed stack frames)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289] "ReferenceQueueDaemon" prio=5 tid=7 Waiting
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x12c060a0 self=0xb4a28400
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | sysTid=9341 nice=0 cgrp=default sched=0/0 handle=0xb4949a80
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 1334687 289843 10 ) utm=0 stm=0 core=3 HZ=100
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | stack=0xb3d90000-0xb3d92000 stackSize=1036KB
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #00 pc 00010480  /system/lib/libc.so (syscall+28)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #01 pc 000a8f0f  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #02 pc 001e997b  /system/lib/libart.so (_ZN3art7Monitor4WaitEPNS_6ThreadExibNS_11ThreadStateE+998)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #03 pc 001ead99  /system/lib/libart.so (_ZN3art7Monitor4WaitEPNS_6ThreadEPNS_6mirror6ObjectExibNS_11ThreadStateE+120)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #04 pc 001f7a29  /system/lib/libart.so (_ZN3artL11Object_waitEP7_JNIEnvP8_jobject+32)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #05 pc 000003df  /data/dalvik-cache/arm/system@framework@boot.oat (Java_java_lang_Object_wait__+82)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Object.wait!(Native method)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   - waiting on <0x2c5d4f17> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Daemons$ReferenceQueueDaemon.run(Daemons.java:134)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   - locked <0x2c5d4f17> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Thread.run(Thread.java:818)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289] "FinalizerDaemon" prio=5 tid=8 Waiting
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x12c06100 self=0xb4a29400
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | sysTid=9342 nice=0 cgrp=default sched=0/0 handle=0xb494b880
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 1478281 1046147 14 ) utm=0 stm=0 core=3 HZ=100
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | stack=0xb3c8c000-0xb3c8e000 stackSize=1036KB
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #00 pc 00010480  /system/lib/libc.so (syscall+28)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #01 pc 000a8f0f  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #02 pc 001e997b  /system/lib/libart.so (_ZN3art7Monitor4WaitEPNS_6ThreadExibNS_11ThreadStateE+998)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #03 pc 001ead99  /system/lib/libart.so (_ZN3art7Monitor4WaitEPNS_6ThreadEPNS_6mirror6ObjectExibNS_11ThreadStateE+120)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #04 pc 001f7a01  /system/lib/libart.so (_ZN3artL13Object_waitJIEP7_JNIEnvP8_jobjectxi+36)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #05 pc 0000060b  /data/dalvik-cache/arm/system@framework@boot.oat (Java_java_lang_Object_wait__JI+102)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Object.wait!(Native method)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   - waiting on <0x149ddf04> (a java.lang.ref.ReferenceQueue)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Object.wait(Object.java:422)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:101)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   - locked <0x149ddf04> (a java.lang.ref.ReferenceQueue)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:72)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:174)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Thread.run(Thread.java:818)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289] "FinalizerWatchdogDaemon" prio=5 tid=9 Waiting
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x12c06160 self=0xb4a29800
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | sysTid=9343 nice=0 cgrp=default sched=0/0 handle=0xb494bb00
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 602500 712135 3 ) utm=0 stm=0 core=3 HZ=100
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | stack=0xb3b88000-0xb3b8a000 stackSize=1036KB
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #00 pc 00010480  /system/lib/libc.so (syscall+28)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #01 pc 000a8f0f  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #02 pc 001e997b  /system/lib/libart.so (_ZN3art7Monitor4WaitEPNS_6ThreadExibNS_11ThreadStateE+998)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #03 pc 001ead99  /system/lib/libart.so (_ZN3art7Monitor4WaitEPNS_6ThreadEPNS_6mirror6ObjectExibNS_11ThreadStateE+120)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #04 pc 001f7a29  /system/lib/libart.so (_ZN3artL11Object_waitEP7_JNIEnvP8_jobject+32)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #05 pc 000003df  /data/dalvik-cache/arm/system@framework@boot.oat (Java_java_lang_Object_wait__+82)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Object.wait!(Native method)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   - waiting on <0x22435ced> (a java.lang.Daemons$FinalizerWatchdogDaemon)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Daemons$FinalizerWatchdogDaemon.waitForObject(Daemons.java:240)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   - locked <0x22435ced> (a java.lang.Daemons$FinalizerWatchdogDaemon)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Daemons$FinalizerWatchdogDaemon.run(Daemons.java:212)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   at java.lang.Thread.run(Thread.java:818)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289] "HeapTrimmerDaemon" prio=5 tid=10 Sleeping
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x12c061c0 self=0xb4a29c00
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | sysTid=9344 nice=0 cgrp=default sched=0/0 handle=0xb494bd80
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 536667 0 2 ) utm=0 stm=0 core=1 HZ=100
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | stack=0xb3a84000-0xb3a86000 stackSize=1036KB
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #00 pc 00038a58  /system/lib/libc.so (nanosleep+12)
06-07 20:04:52.975 A/art: art/runtime/runtime.cc:289]   native: #01 pc 000224ad  /system/lib/libc.so (usleep+36)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #02 pc 0014216b  /system/lib/libart.so (_ZN3art2gc4Heap25DoPendingTransitionOrTrimEv+666)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #03 pc 000003df  /data/dalvik-cache/arm/system@framework@boot.oat (Java_dalvik_system_VMRuntime_trimHeap__+82)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   at dalvik.system.VMRuntime.trimHeap(Native method)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   - sleeping on an unknown object
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   at java.lang.Daemons$HeapTrimmerDaemon.run(Daemons.java:313)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   at java.lang.Thread.run(Thread.java:818)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289] "GCDaemon" prio=5 tid=11 Waiting
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x12c06220 self=0xb4a2a000
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | sysTid=9345 nice=0 cgrp=default sched=0/0 handle=0xb494c000
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 17986669 1742237 23 ) utm=0 stm=1 core=1 HZ=100
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | stack=0xb3980000-0xb3982000 stackSize=1036KB
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #00 pc 00010480  /system/lib/libc.so (syscall+28)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #01 pc 000a8f0f  /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #02 pc 001e997b  /system/lib/libart.so (_ZN3art7Monitor4WaitEPNS_6ThreadExibNS_11ThreadStateE+998)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #03 pc 001ead99  /system/lib/libart.so (_ZN3art7Monitor4WaitEPNS_6ThreadEPNS_6mirror6ObjectExibNS_11ThreadStateE+120)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #04 pc 001f7a29  /system/lib/libart.so (_ZN3artL11Object_waitEP7_JNIEnvP8_jobject+32)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #05 pc 000003df  /data/dalvik-cache/arm/system@framework@boot.oat (Java_java_lang_Object_wait__+82)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   at java.lang.Object.wait!(Native method)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   - waiting on <0x294cf722> (a java.lang.Daemons$GCDaemon)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   at java.lang.Daemons$GCDaemon.run(Daemons.java:344)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   - locked <0x294cf722> (a java.lang.Daemons$GCDaemon)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   at java.lang.Thread.run(Thread.java:818)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289] "Binder_1" prio=5 tid=12 Native
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x12c570a0 self=0xaec42400
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | sysTid=9346 nice=0 cgrp=default sched=0/0 handle=0xb494c280
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 6388750 6482604 42 ) utm=0 stm=0 core=1 HZ=100
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | stack=0xb3684000-0xb3686000 stackSize=1012KB
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #00 pc 000375e0  /system/lib/libc.so (__ioctl+8)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #01 pc 0004f6b5  /system/lib/libc.so (ioctl+14)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #02 pc 0001cbaf  /system/lib/libbinder.so (_ZN7android14IPCThreadState14talkWithDriverEb+138)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #03 pc 0001d09b  /system/lib/libbinder.so (_ZN7android14IPCThreadState20getAndExecuteCommandEv+6)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #04 pc 0001d0fd  /system/lib/libbinder.so (_ZN7android14IPCThreadState14joinThreadPoolEb+48)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #05 pc 00021273  /system/lib/libbinder.so (???)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #06 pc 0000ef55  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+112)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #07 pc 0005c04d  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+72)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #08 pc 0000eac5  /system/lib/libutils.so (???)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #09 pc 00013fc3  /system/lib/libc.so (_ZL15__pthread_startPv+30)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #10 pc 00011f0b  /system/lib/libc.so (__start_thread+6)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   (no managed stack frames)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289] 
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289] "Binder_2" prio=5 tid=13 Native
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | group="" sCount=0 dsCount=0 obj=0x12c5a0a0 self=0xb4a2a400
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | sysTid=9349 nice=0 cgrp=default sched=0/0 handle=0xaec93300
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | state=S schedstat=( 3168853 3383179 32 ) utm=0 stm=0 core=0 HZ=100
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | stack=0xaf3a3000-0xaf3a5000 stackSize=1012KB
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   | held mutexes=
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #00 pc 000375e0  /system/lib/libc.so (__ioctl+8)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #01 pc 0004f6b5  /system/lib/libc.so (ioctl+14)
06-07 20:04:52.976 A/art: art/runtime/runtime.cc:289]   native: #02 pc 0001cbaf  /system/lib/libbinder.so (_ZN7android14IPCThreadState14talkWithDriverEb+138)
06-07 20:04:52.977 A/art: art/runtime/runtime.cc:289]   native: #12 pc 000591b4  /system/lib/libandroid_runtime.so (???)
06-07 20:04:52.977 A/libc: Fatal signal 6 (SIGABRT), code -6 in tid 9431 (GLThread 1977)

转载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值