I don't know exactly what change I did on the code that made my app SUPER SLOW, now it takes about two minutes to start but before it would take less than 30 seconds.
I'm getting hundreds of messages like this just starting the app which no real work being done.
W/zygote: Long monitor contention with owner pool-2-thread-12: (31043) at byte[] gj.a(byte[], java.lang.String)(:com.google.android.gms.dynamite_dynamitemodulesa@[email protected] (040700-189987672):56) waiters=9 in byte[] gj.a(byte[], java.lang.String) for 840ms
W/zygote: Long monitor contention with owner pool-2-thread-13: (31044) at byte[] gj.a(byte[], java.lang.String)(:com.google.android.gms.dynamite_dynamitemodulesa@[email protected] (040700-189987672):56) waiters=9 in byte[] gj.a(byte[], java.lang.String) for 912ms
W/zygote: Long monitor contention with owner pool-2-thread-20: (31059) at java.lang.String com.google.android.ads.zxxz.k.a(android.content.Context)(:-1) waiters=0 in void com.google.android.ads.tasks.e.a() for 1.362s
W/zygote: Long monitor contention with owner pool-2-thread-20: (31059) at java.lang.String com.google.android.ads.zxxz.k.a(android.content.Context)(:-1) waiters=1 in void com.google.android.ads.tasks.c.a() for 1.207s
W/zygote: Long monitor contention with owner pool-2-thread-5: (31018) at byte[] gj.a(byte[], java.lang.String)(:com.google.android.gms.dynamite_dynamitemodulesa@[email protected] (040700-189987672):56) waiters=9 in byte[] gj.a(byte[], java.lang.String) for 905ms
W/zygote: Long monitor contention with owner pool-2-thread-20: (31059) at java.lang.String com.google.android.ads.zxxz.k.a(android.content.Context)(:-1) waiters=2 in void com.google.android.ads.tasks.t.a() for 1.258s
W/zygote: Long monitor contention with owner pool-2-thread-20: (31059) at java.lang.String com.google.android.ads.zxxz.k.a(android.content.Context)(:-1) waiters=3 in void com.google.android.ads.tasks.g.a() for 1.256s
W/zygote: Long monitor contention with owner pool-2-thread-20: (31059) at java.lang.String com.google.android.ads.zxxz.k.a(android.content.Context)(:-1) waiters=4 in void com.google.android.ads.tasks.l.a() for 811ms
W/zygote: Long monitor contention with owner pool-2-thread-20: (31059) at java.lang.String com.google.android.ads.zxxz.k.a(android.content.Context)(:-1) waiters=5 in void com.google.android.ads.tasks.s.a() for 677ms
W/zygote: Long monitor contention with owner pool-2-thread-20: (31059) at java.lang.String com.google.android.ads.zxxz.k.a(android.content.Context)(:-1) waiters=6 in void com.google.android.ads.tasks.f.a() for 655ms
W/zygote: Long monitor contention with owner pool-2-thread-20: (31059) at java.lang.String com.google.android.ads.zxxz.k.a(android.content.Context)(:-1) waiters=7 in void com.google.android.ads.tasks.j.a() for 527ms
W/zygote: Long monitor contention with owner pool-2-thread-20: (31059) at java.lang.String com.google.android.ads.zxxz.k.a(android.content.Context)(:-1) waiters=8 in void com.google.android.ads.tasks.q.a() for 498ms
W/zygote: Long monitor contention with owner pool-2-thread-8: (31033) at byte[] gj.a(byte[], java.lang.String)(:com.google.android.gms.dynamite_dynamitemodulesa@[email protected] (040700-189987672):56) waiters=8 in byte[] gj.a(byte[], java.lang.String) for 855ms
how can i debug and track the source of it?