ANR分析-WaitingPerformingGc
来源:互联网 发布:Linux修改进程名字 编辑:程序博客网 时间:2024/06/08 01:05
10-12 17:32:02.726 1120 1159 I am_anr : [0,17331,com.flipkart.android,955792964,Input dispatching timed out (Waiting to send key event because the focused window has not finished processing all of the input events that were previously delivered to it. Outbound queue length: 0. Wait queue length: 1.)]1120 1754 I am_crash: [17331,0,com.flipkart.android,955792964,java.lang.OutOfMemoryError,Failed to allocate a 503316488 byte allocation with 16765216 free bytes and 135MB until OOM,Arrays.java,3352]
分析得知,应用主线程执行GC操作,导致主线程内存被block住,由于当前没有打印出当前com.flipkart.android申请的内存对象有多少,
当时查看后续log,发现在发生ANR差不多的时候,com.flipkart.android发生了OOM行为,代表申请的内存对象很多,
,导致GC扫描时间过程过长,产生ANR.
此问题是com.flipkart.android用进程内存存在泄漏或使用不当,导致GC时间处理过程长,产生ANR,需要三方解决OOM的行为.
10-12 17:32:04.192 17331 17331 E AndroidRuntime: java.lang.OutOfMemoryError: Failed to allocate a 503316488 byte allocation with 16765216 free bytes and 135MB until OOM
"main" prio=5 tid=1 WaitingPerformingGc | group="main" sCount=1 dsCount=0 obj=0x744665c8 self=0xec005400 | sysTid=17331 nice=-4 cgrp=default sched=0/0 handle=0xef58f534 | state=R schedstat=( 8677880253 78273001 1138 ) utm=814 stm=52 core=7 HZ=100 | stack=0xff4d5000-0xff4d7000 stackSize=8MB | held mutexes= "heap bitmap lock"(exclusive held) "mutator lock"(shared held) kernel: __switch_to+0x94/0xa8 kernel: preempt_count_sub+0x2c/0x6c kernel: __this_cpu_preempt_check+0x18/0x20 kernel: 0xffffffc0013423a8 native: #00 pc 00179392 /system/lib/libart.so (_ZN3art6mirror6Object15VisitReferencesILb1ELNS_17VerifyObjectFlagsE0ELNS_17ReadBarrierOptionE0ENS_2gc9collector11MarkVisitorENS6_29DelayReferenceReferentVisitorEEEvRKT2_RKT3_+29) native: #01 pc 00175873 /system/lib/libart.so (_ZN3art2gc9collector9MarkSweep16ProcessMarkStackEb+206) native: #02 pc 001749e9 /system/lib/libart.so (_ZN3art2gc9collector9MarkSweep20MarkReachableObjectsEv+32) native: #03 pc 00173915 /system/lib/libart.so (_ZN3art2gc9collector9MarkSweep12MarkingPhaseEv+132) native: #04 pc 001737ad /system/lib/libart.so (_ZN3art2gc9collector9MarkSweep9RunPhasesEv+144) native: #05 pc 0016e535 /system/lib/libart.so (_ZN3art2gc9collector16GarbageCollector3RunENS0_7GcCauseEb+248) native: #06 pc 00191a4d /system/lib/libart.so (_ZN3art2gc4Heap22CollectGarbageInternalENS0_9collector6GcTypeENS0_7GcCauseEb+2364) native: #07 pc 0018e997 /system/lib/libart.so (_ZN3art2gc4Heap22AllocateInternalWithGcEPNS_6ThreadENS0_13AllocatorTypeEbjPjS5_S5_PPNS_6mirror5ClassE+14590) native: #08 pc 00380f17 /system/lib/libart.so (_ZN3art2gc4Heap16AllocLargeObjectILb0ENS_6mirror16SetLengthVisitorEEEPNS3_6ObjectEPNS_6ThreadEPPNS3_5ClassEjRKT0_+574) native: #09 pc 003a007d /system/lib/libart.so (artAllocArrayFromCodeRosAlloc+272) native: #10 pc 000aaf91 /system/lib/libart.so (art_quick_alloc_array_rosalloc+32) native: #11 pc 00144861 /system/framework/arm/boot.oat (Java_java_util_Arrays_copyOf___3CI+44) at java.util.Arrays.copyOf(Arrays.java:3352) at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:130) at java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:114) at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:417) at java.lang.StringBuffer.append(StringBuffer.java:237) - locked <0x085b5cd2> (a java.lang.StringBuffer) at java.io.StringWriter.write(StringWriter.java:112) at com.google.gson.c.c.d(JsonWriter.java:591) at com.google.gson.c.c.b(JsonWriter.java:419) at com.google.gson.internal.bind.i$8.a(TypeAdapters.java:422) at com.google.gson.internal.bind.i$8.write(TypeAdapters.java:406) at com.google.gson.internal.bind.h.write(TypeAdapterRuntimeTypeWrapper.java:69) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.a(ReflectiveTypeAdapterFactory.java:125) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$a.write(ReflectiveTypeAdapterFactory.java:243) at com.google.gson.internal.bind.e.write(ObjectTypeAdapter.java:107) at com.google.gson.internal.bind.h.write(TypeAdapterRuntimeTypeWrapper.java:69) at com.google.gson.internal.bind.MapTypeAdapterFactory$a.a(MapTypeAdapterFactory.java:208) at com.google.gson.internal.bind.MapTypeAdapterFactory$a.write(MapTypeAdapterFactory.java:145) at com.f.a.a$j.write(KnownTypeAdapters.java:812) at com.google.gson.v.toJson(TypeAdapter.java:142) at com.google.gson.v.toJson(TypeAdapter.java:217) at com.flipkart.android.h.b.serialize(Serializer.java:305) at com.flipkart.android.d.f.saveUndownloadedJsResources(FlipkartPreferenceManager.java:375) at com.flipkart.android.m.c.a(WebResourceManager.java:305) at com.flipkart.android.m.c.update(WebResourceManager.java:236) - locked <0x019ab1a3> (a com.flipkart.android.m.c) at com.flipkart.android.d.b.fetchJsResource(ConfigHelper.java:60) at com.flipkart.android.register.RegistrationHelper$1.errorReceived(RegistrationHelper.java:113) at com.flipkart.mapi.client.l.e.onFailure(FkResponseWrapperCallback.java:22) at com.flipkart.mapi.client.a.a$c$1$1$3.run(FkCallAdapterFactory.java:293) at android.os.Handler.handleCallback(Handler.java:836) at android.os.Handler.dispatchMessage(Handler.java:103) at android.os.Looper.loop(Looper.java:203) at android.app.ActivityThread.main(ActivityThread.java:6255) at java.lang.reflect.Method.invoke!(Native method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1064) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:925)
阅读全文
0 0
- ANR分析-WaitingPerformingGc
- anr 分析
- ANR分析
- ANR分析
- ANR分析
- ANR分析
- ANR分析
- anr分析
- ANR分析
- 分析ANR
- ANR分析
- anr分析
- ANR分析
- ANR分析
- ANR分析
- anr分析
- anr 分析
- Android-ANR-Android ANR分析
- MySQL之存储引擎
- Visual Studio 2017 无法引用 windows.h wincon.h 的解决办法
- IntentService使用详解和实例介绍
- ZOJ
- 随机数的方法
- ANR分析-WaitingPerformingGc
- Android N指纹识别
- 算法问题
- 《正义之心-为什么人们总是相信我对你错》-读后感
- if break、if continue和if return三者之间的区别
- 【机器学习实战】第12章 使用FP-growth算法来高效发现频繁项集
- hostname
- 文章标题
- 分享一个白帽交流灵感的社区——先知技术安全社区