mozilla / mozjpeg

Improved JPEG encoder.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

OOM on Android

jiangdongguo opened this issue · comments

Hi, Thanks for your great library! There was a problem: when I used mozjpeg on Android and tryed to encode camera yuv to jpeg stream, my app crashed beacuse of oom in a few seconds! But the same code I used libjpeg-turbo instead, the app worked fine. so i think that is there something wrong with the mozjpeg? Hope your reply, Tks!

Here is the logs:

2021-12-02 10:31:58.126 25995-26109/com.jiangdg.libjpeg I/test: --->cost->683ms
2021-12-02 10:31:58.809 25995-26109/com.jiangdg.libjpeg I/test: ---->28693--->cost->683ms
2021-12-02 10:31:58.809 25995-26109/com.jiangdg.libjpeg I/test: --->cost->683ms
2021-12-02 10:31:59.492 25995-26109/com.jiangdg.libjpeg I/test: ---->29797--->cost->683ms
2021-12-02 10:31:59.492 25995-26109/com.jiangdg.libjpeg I/test: --->cost->683ms
2021-12-02 10:32:00.175 25995-26109/com.jiangdg.libjpeg I/test: ---->29226--->cost->682ms
2021-12-02 10:32:00.176 25995-26109/com.jiangdg.libjpeg I/test: --->cost->683ms
2021-12-02 10:32:00.856 25995-26109/com.jiangdg.libjpeg I/test: ---->29400--->cost->680ms
2021-12-02 10:32:00.856 25995-26109/com.jiangdg.libjpeg I/test: --->cost->680ms
2021-12-02 10:32:01.086 25995-26012/com.jiangdg.libjpeg I/jiangdg.libjpe: Clamp target GC heap from 394MB to 384MB
2021-12-02 10:32:01.431 25995-26025/com.jiangdg.libjpeg I/jiangdg.libjpe: Starting a blocking GC Alloc
2021-12-02 10:32:01.432 25995-26025/com.jiangdg.libjpeg I/jiangdg.libjpe: Starting a blocking GC Alloc
2021-12-02 10:32:01.454 25995-26025/com.jiangdg.libjpeg I/jiangdg.libjpe: Alloc young concurrent copying GC freed 105(62KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 383MB/384MB, paused 59us total 19.368ms
2021-12-02 10:32:01.454 25995-26025/com.jiangdg.libjpeg I/jiangdg.libjpe: Starting a blocking GC Alloc
2021-12-02 10:32:01.470 25995-26025/com.jiangdg.libjpeg I/jiangdg.libjpe: Clamp target GC heap from 407MB to 384MB
2021-12-02 10:32:01.470 25995-26025/com.jiangdg.libjpeg I/jiangdg.libjpe: Alloc concurrent copying GC freed 9(32KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 383MB/384MB, paused 44us total 15.873ms
2021-12-02 10:32:01.470 25995-26025/com.jiangdg.libjpeg I/jiangdg.libjpe: Forcing collection of SoftReferences for 1350KB allocation
2021-12-02 10:32:01.470 25995-26025/com.jiangdg.libjpeg I/jiangdg.libjpe: Starting a blocking GC Alloc
2021-12-02 10:32:01.482 25995-26025/com.jiangdg.libjpeg I/jiangdg.libjpe: Clamp target GC heap from 407MB to 384MB
2021-12-02 10:32:01.482 25995-26025/com.jiangdg.libjpeg I/jiangdg.libjpe: Alloc concurrent copying GC freed 217(54KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 383MB/384MB, paused 58us total 11.794ms
2021-12-02 10:32:01.482 25995-26025/com.jiangdg.libjpeg E/jiangdg.libjpe: [MemLeak.JavaTrack]: failed to write oom info: Operation not permitted

2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] Runtime aborting...
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] Dumping all threads without mutator lock held
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] All threads:
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] DALVIK THREADS (17):
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "encode_jpeg" prio=5 tid=21 Runnable
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=0 dsCount=0 flags=0 obj=0x12c00ad0 self=0x76a2698800
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26109 nice=0 cgrp=default sched=0/0 handle=0x763db1bd50
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=R schedstat=( 14085452626 122830728 1819 ) utm=1403 stm=4 core=7 HZ=100
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x763da19000-0x763da1b000 stackSize=1039KB
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes= "abort lock" "mutator lock"(shared held)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 000000000042f8e8 /apex/com.android.runtime/lib64/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits>&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool)+140)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000052357c /apex/com.android.runtime/lib64/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits>&, bool, BacktraceMap*, bool) const+508)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 000000000053e748 /apex/com.android.runtime/lib64/libart.so (art::DumpCheckpoint::Run(art::Thread*)+844)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 0000000000537348 /apex/com.android.runtime/lib64/libart.so (art::ThreadList::RunCheckpoint(art::Closure*, art::Closure*)+504)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #4 pc 0000000000536730 /apex/com.android.runtime/lib64/libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits>&, bool)+1048)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #5 pc 00000000004e0a34 /apex/com.android.runtime/lib64/libart.so (art::Runtime::Abort(char const*)+1700)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #6 pc 000000000000c600 /system/lib64/libbase.so (android::base::LogMessage::~LogMessage()+684)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #7 pc 00000000003934e0 /apex/com.android.runtime/lib64/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+1616)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #8 pc 00000000003f3758 /apex/com.android.runtime/lib64/libart.so (art::JNI::SetByteArrayRegion(_JNIEnv*, _jbyteArray*, int, int, signed char const*)+1596)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #9 pc 0000000000001784 /data/app/com.jiangdg.libjpeg-t8EJrDPbkHIQxhYQm8RPvg==/lib/arm64/libmyjpeg.so (_JNIEnv::SetByteArrayRegion(_jbyteArray*, int, int, signed char const*)+64)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #10 pc 0000000000001678 /data/app/com.jiangdg.libjpeg-t8EJrDPbkHIQxhYQm8RPvg==/lib/arm64/libmyjpeg.so (Java_com_jiangdg_libjpeg_JpegUtil_nativeCompress2Memory+156)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #11 pc 0000000000150350 /apex/com.android.runtime/lib64/libart.so (art_quick_generic_jni_trampoline+144)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #12 pc 0000000000147334 /apex/com.android.runtime/lib64/libart.so (art_quick_invoke_stub+548)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #13 pc 00000000001561b4 /apex/com.android.runtime/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+252)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #14 pc 00000000002fd900 /apex/com.android.runtime/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+384)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #15 pc 00000000002f8bd0 /apex/com.android.runtime/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+912)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #16 pc 00000000005cb550 /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtual+648)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #17 pc 0000000000141814 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual+20)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #18 pc 00000000000013a6 [anon:dalvik-classes3.dex extracted in memory from /data/app/com.jiangdg.libjpeg-t8EJrDPbkHIQxhYQm8RPvg==/base.apk!classes3.dex] (com.jiangdg.libjpeg.MainActivity.onSurfaceTextureAvailable$lambda-3$lambda-2+34)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #19 pc 00000000005ce408 /apex/com.android.runtime/lib64/libart.so (MterpInvokeStatic+1136)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #20 pc 0000000000141994 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_static+20)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #21 pc 0000000000001194 [anon:dalvik-classes3.dex extracted in memory from /data/app/com.jiangdg.libjpeg-t8EJrDPbkHIQxhYQm8RPvg==/base.apk!classes3.dex] (com.jiangdg.libjpeg.MainActivity.$r8$lambda$ai2jN4lr6IsBzjg01mKI0mIliPU)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #22 pc 00000000005ce408 /apex/com.android.runtime/lib64/libart.so (MterpInvokeStatic+1136)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #23 pc 0000000000141994 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_static+20)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #24 pc 0000000000000ff4 [anon:dalvik-classes3.dex extracted in memory from /data/app/com.jiangdg.libjpeg-t8EJrDPbkHIQxhYQm8RPvg==/base.apk!classes3.dex] (com.jiangdg.libjpeg.MainActivity$$ExternalSyntheticLambda2.run+4)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #25 pc 00000000005cd060 /apex/com.android.runtime/lib64/libart.so (MterpInvokeInterface+1752)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #26 pc 0000000000141a14 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_interface+20)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #27 pc 000000000030cf38 /system/framework/framework.jar (android.os.Handler.handleCallback+4)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #28 pc 00000000005ce408 /apex/com.android.runtime/lib64/libart.so (MterpInvokeStatic+1136)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #29 pc 0000000000141994 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_static+20)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #30 pc 000000000030cda4 /system/framework/framework.jar (android.os.Handler.dispatchMessage+8)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #31 pc 00000000005cb860 /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtual+1432)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #32 pc 0000000000141814 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual+20)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #33 pc 0000000000337f1c /system/framework/framework.jar (android.os.Looper.loop+480)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #34 pc 00000000005ce408 /apex/com.android.runtime/lib64/libart.so (MterpInvokeStatic+1136)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #35 pc 0000000000141994 /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_static+20)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #36 pc 000000000030c45c /system/framework/framework.jar (android.os.HandlerThread.run+56)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #37 pc 00000000002ce22c /apex/com.android.runtime/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadERKNS_20CodeItemDataAccessorERNS_11ShadowFrameENS_6JValueEbb.llvm.10887373532384510885+320)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #38 pc 00000000005bc090 /apex/com.android.runtime/lib64/libart.so (artQuickToInterpreterBridge+1012)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #39 pc 0000000000150468 /apex/com.android.runtime/lib64/libart.so (art_quick_to_interpreter_bridge+88)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #40 pc 0000000000147334 /apex/com.android.runtime/lib64/libart.so (art_quick_invoke_stub+548)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #41 pc 00000000001561b4 /apex/com.android.runtime/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+252)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #42 pc 00000000004d8820 /apex/com.android.runtime/lib64/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+104)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #43 pc 00000000004d98b4 /apex/com.android.runtime/lib64/libart.so (art::InvokeVirtualOrInterfaceWithJValues(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, jvalue const*)+416)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #44 pc 000000000051ca8c /apex/com.android.runtime/lib64/libart.so (art::Thread::CreateCallback(void*)+1232)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #45 pc 00000000000cf7c0 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #46 pc 00000000000721a8 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at com.jiangdg.libjpeg.JpegUtil.nativeCompress2Memory(Native method)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at com.jiangdg.libjpeg.MainActivity.onSurfaceTextureAvailable$lambda-3$lambda-2(MainActivity.kt:72)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at com.jiangdg.libjpeg.MainActivity.$r8$lambda$ai2jN4lr6IsBzjg01mKI0mIliPU(MainActivity.kt:-1)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at com.jiangdg.libjpeg.MainActivity$$ExternalSyntheticLambda2.run(unavailable:-1)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at android.os.Handler.handleCallback(Handler.java:900)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at android.os.Handler.dispatchMessage(Handler.java:103)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at android.os.Looper.loop(Looper.java:219)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at android.os.HandlerThread.run(HandlerThread.java:67)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "main" prio=10 tid=1 Native
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x74d58540 self=0x76b9e10800
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=25995 nice=-10 cgrp=default sched=0/0 handle=0x7740d460d0
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 1413309874 92623952 2648 ) utm=116 stm=24 core=5 HZ=100
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x7fc3468000-0x7fc346a000 stackSize=8192KB
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/25995/stack)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 00000000000bae08 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 0000000000017b64 /system/lib64/libutils.so (android::Looper::pollInner(int)+144)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 0000000000017a34 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+56)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 0000000000185cc4 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at android.os.MessageQueue.nativePollOnce(Native method)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at android.os.MessageQueue.next(MessageQueue.java:363)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at android.os.Looper.loop(Looper.java:176)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at android.app.ActivityThread.main(ActivityThread.java:8668)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.reflect.Method.invoke(Native method)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1109)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "Jit thread pool worker thread 0" prio=5 tid=4 Native
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c00350 self=0x76ad210800
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26004 nice=0 cgrp=default sched=0/0 handle=0x76ae4cbd40
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 343455214 56339585 471 ) utm=27 stm=6 core=0 HZ=100
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76ae3cd000-0x76ae3cf000 stackSize=1023KB
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26004/stack)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 000000000006cbbc /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000015c2a0 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+156)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 0000000000540230 /apex/com.android.runtime/lib64/libart.so (art::ThreadPool::GetTask(art::Thread*)+276)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 000000000053f540 /apex/com.android.runtime/lib64/libart.so (art::ThreadPoolWorker::Run()+144)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #4 pc 000000000053f004 /apex/com.android.runtime/lib64/libart.so (art::ThreadPoolWorker::Callback(void*)+148)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #5 pc 00000000000cf7c0 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #6 pc 00000000000721a8 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] (no managed stack frames)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "Signal Catcher" prio=5 tid=7 WaitingInMainSignalCatcherLoop
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c003c8 self=0x76a2662400
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26010 nice=0 cgrp=default sched=0/0 handle=0x76ae3c6d50
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 182292 3174478 7 ) utm=0 stm=0 core=1 HZ=100
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76ae2d0000-0x76ae2d2000 stackSize=991KB
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26010/stack)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 00000000000bb088 /apex/com.android.runtime/lib64/bionic/libc.so (__rt_sigtimedwait+8)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000007cf64 /apex/com.android.runtime/lib64/bionic/libc.so (sigwait+128)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 0000000000502838 /apex/com.android.runtime/lib64/libart.so (art::SignalCatcher::WaitForSignal(art::Thread*, art::SignalSet&)+392)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 0000000000501554 /apex/com.android.runtime/lib64/libart.so (art::SignalCatcher::Run(void*)+284)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #4 pc 00000000000cf7c0 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #5 pc 00000000000721a8 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] (no managed stack frames)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "HeapTaskDaemon" prio=5 tid=8 WaitingForCheckPointsToRun
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c00440 self=0x76b9f2ec00
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26012 nice=4 cgrp=default sched=0/0 handle=0x76ae1ccd50
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 665785932 33772921 466 ) utm=62 stm=3 core=3 HZ=100
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76ae0ca000-0x76ae0cc000 stackSize=1039KB
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26012/stack)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 000000000006cbc0 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+32)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000015c6e0 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::TimedWait(art::Thread*, long, int)+176)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 0000000000158e74 /apex/com.android.runtime/lib64/libart.so (art::Barrier::Increment(art::Thread*, int, unsigned int)+132)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 0000000000537c74 /apex/com.android.runtime/lib64/libart.so (art::ThreadList::RunEmptyCheckpoint()+716)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #4 pc 0000000000226d18 /apex/com.android.runtime/lib64/libart.so (art::gc::collector::ConcurrentCopying::IssueEmptyCheckpoint()+456)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #5 pc 0000000000221900 /apex/com.android.runtime/lib64/libart.so (art::gc::collector::ConcurrentCopying::CopyingPhase()+1948)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #6 pc 000000000021f4e0 /apex/com.android.runtime/lib64/libart.so (art::gc::collector::ConcurrentCopying::RunPhases()+1148)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #7 pc 000000000023deb4 /apex/com.android.runtime/lib64/libart.so (art::gc::collector::GarbageCollector::Run(art::gc::GcCause, bool)+288)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #8 pc 000000000025d37c /apex/com.android.runtime/lib64/libart.so (art::gc::Heap::CollectGarbageInternal(art::gc::collector::GcType, art::gc::GcCause, bool)+2740)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #9 pc 000000000026fb5c /apex/com.android.runtime/lib64/libart.so (art::gc::Heap::ConcurrentGC(art::Thread*, art::gc::GcCause, bool)+124)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #10 pc 0000000000275858 /apex/com.android.runtime/lib64/libart.so (art::gc::Heap::ConcurrentGCTask::Run(art::Thread*)+36)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #11 pc 00000000002a8230 /apex/com.android.runtime/lib64/libart.so (art::gc::TaskProcessor::RunAllTasks(art::Thread*)+64)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at dalvik.system.VMRuntime.runHeapTasks(Native method)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Daemons$HeapTaskDaemon.runInternal(Daemons.java:523)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Daemons$Daemon.run(Daemons.java:137)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Thread.run(Thread.java:929)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "FinalizerWatchdogDaemon" prio=5 tid=9 Sleeping
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c004b8 self=0x76a8c20000
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26015 nice=4 cgrp=default sched=0/0 handle=0x76adeb1d50
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 683855 768229 6 ) utm=0 stm=0 core=0 HZ=100
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76addaf000-0x76addb1000 stackSize=1039KB
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26015/stack)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 000000000006cbc0 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+32)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000015c6e0 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::TimedWait(art::Thread*, long, int)+176)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 0000000000429304 /apex/com.android.runtime/lib64/libart.so (art::Monitor::Wait(art::Thread*, long, int, bool, art::ThreadState)+692)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 000000000042af90 /apex/com.android.runtime/lib64/libart.so (art::Monitor::Wait(art::Thread*, art::ObjPtrart::mirror::Object, long, int, bool, art::ThreadState)+284)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Thread.sleep(Native method)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] - sleeping on <0x0f9d5acf> (a java.lang.Object)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Thread.sleep(Thread.java:443)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] - locked <0x0f9d5acf> (a java.lang.Object)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Thread.sleep(Thread.java:359)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Daemons$FinalizerWatchdogDaemon.sleepForMillis(Daemons.java:383)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Daemons$FinalizerWatchdogDaemon.waitForFinalization(Daemons.java:411)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Daemons$FinalizerWatchdogDaemon.runInternal(Daemons.java:323)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Daemons$Daemon.run(Daemons.java:137)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Thread.run(Thread.java:929)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "FinalizerDaemon" prio=5 tid=10 Waiting
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c00538 self=0x76b9f32400
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26014 nice=4 cgrp=default sched=0/0 handle=0x76adfbad50
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 66583851 25395833 431 ) utm=4 stm=1 core=4 HZ=100
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76adeb8000-0x76adeba000 stackSize=1039KB
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26014/stack)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 000000000006cbbc /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000015c2a0 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+156)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 00000000004292e4 /apex/com.android.runtime/lib64/libart.so (art::Monitor::Wait(art::Thread*, long, int, bool, art::ThreadState)+660)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 000000000042af90 /apex/com.android.runtime/lib64/libart.so (art::Monitor::Wait(art::Thread*, art::ObjPtrart::mirror::Object, long, int, bool, art::ThreadState)+284)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Object.wait(Native method)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] - waiting on <0x02c4ec5c> (a java.lang.Object)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Object.wait(Object.java:442)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:190)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] - locked <0x02c4ec5c> (a java.lang.Object)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:211)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:271)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Daemons$Daemon.run(Daemons.java:137)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Thread.run(Thread.java:929)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "ReferenceQueueDaemon" prio=5 tid=11 Waiting
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c005b0 self=0x76b9f30800
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26013 nice=4 cgrp=default sched=0/0 handle=0x76ae0c3d50
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 39483864 17669792 388 ) utm=3 stm=0 core=3 HZ=100
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76adfc1000-0x76adfc3000 stackSize=1039KB
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26013/stack)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 000000000006cbbc /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000015c2a0 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+156)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 00000000004292e4 /apex/com.android.runtime/lib64/libart.so (art::Monitor::Wait(art::Thread*, long, int, bool, art::ThreadState)+660)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 000000000042af90 /apex/com.android.runtime/lib64/libart.so (art::Monitor::Wait(art::Thread*, art::ObjPtrart::mirror::Object, long, int, bool, art::ThreadState)+284)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Object.wait(Native method)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] - waiting on <0x0904db65> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Object.wait(Object.java:442)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Object.wait(Object.java:568)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Daemons$ReferenceQueueDaemon.runInternal(Daemons.java:215)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] - locked <0x0904db65> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Daemons$Daemon.run(Daemons.java:137)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] at java.lang.Thread.run(Thread.java:929)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "ADB-JDWP Connection Control Thread" prio=5 tid=12 WaitingInMainDebuggerLoop
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c00628 self=0x76ad237800
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26011 nice=0 cgrp=default sched=0/0 handle=0x76ae2c9d50
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 1637501 7894791 9 ) utm=0 stm=0 core=6 HZ=100
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76ae1d3000-0x76ae1d5000 stackSize=991KB
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26011/stack)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 00000000000baf88 /apex/com.android.runtime/lib64/bionic/libc.so (__ppoll+8)
2021-12-02 10:32:05.997 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000007aa5c /apex/com.android.runtime/lib64/bionic/libc.so (poll+88)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 0000000000007cc4 /apex/com.android.runtime/lib64/libadbconnection.so (adbconnection::AdbConnectionState::RunPollLoop(art::Thread*)+824)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 00000000000060c8 /apex/com.android.runtime/lib64/libadbconnection.so (adbconnection::CallbackFunction(void*)+1116)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #4 pc 00000000000cf7c0 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #5 pc 00000000000721a8 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] (no managed stack frames)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "Binder:25995_1" prio=5 tid=13 WaitingForGcToComplete
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c006a0 self=0x76a267e400
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26016 nice=0 cgrp=default sched=0/0 handle=0x76adcaad50
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 1654274969 115720331 1378 ) utm=141 stm=23 core=6 HZ=100
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76adbb4000-0x76adbb6000 stackSize=991KB
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26016/stack)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 000000000006cbbc /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000015c2a0 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+156)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 0000000000257830 /apex/com.android.runtime/lib64/libart.so (art::gc::Heap::WaitForGcToCompleteLocked(art::gc::GcCause, art::Thread*)+452)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 00000000002640e0 /apex/com.android.runtime/lib64/libart.so (art::gc::Heap::WaitForGcToComplete(art::gc::GcCause, art::Thread*)+420)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #4 pc 00000000002608f4 /apex/com.android.runtime/lib64/libart.so (art::gc::Heap::AllocateInternalWithGc(art::Thread*, art::gc::AllocatorType, bool, unsigned long, unsigned long*, unsigned long*, unsigned long*, art::ObjPtrart::mirror::Class)+148)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #5 pc 000000000019e914 /apex/com.android.runtime/lib64/libart.so (art::mirror::Object
art::gc::Heap::AllocObjectWithAllocator<true, true, art::mirror::SetLengthVisitor>(art::Thread*, art::ObjPtrart::mirror::Class, unsigned long, art::gc::AllocatorType, art::mirror::SetLengthVisitor const&)+764)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #6 pc 00000000004035e0 /apex/com.android.runtime/lib64/libart.so (art::mirror::PrimitiveArray::Alloc(art::Thread*, unsigned long)+180)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #7 pc 00000000003e46dc /apex/com.android.runtime/lib64/libart.so (art::JNI::NewByteArray(_JNIEnv*, int)+604)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #8 pc 00000000001e8100 /system/lib64/libandroid_runtime.so (JNICameraContext::copyAndPost(_JNIEnv*, android::spandroid::IMemory const&, int)+564)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #9 pc 00000000001e82fc /system/lib64/libandroid_runtime.so (JNICameraContext::postData(int, android::spandroid::IMemory const&, camera_frame_metadata*)+164)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #10 pc 0000000000042428 /system/lib64/libcamera_client.so (android::Camera::dataCallback(int, android::spandroid::IMemory const&, camera_frame_metadata*)+144)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #11 pc 0000000000057798 /system/lib64/libcamera_client.so (android::hardware::BnCameraClient::onTransact(unsigned int, android::Parcel const&, android::Parcel*, unsigned int)+1540)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #12 pc 00000000000587a8 /system/lib64/libbinder.so (android::BBinder::transact(unsigned int, android::Parcel const&, android::Parcel*, unsigned int)+136)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #13 pc 0000000000065754 /system/lib64/libbinder.so (android::IPCThreadState::executeCommand(int)+1220)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #14 pc 00000000000651dc /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+156)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #15 pc 0000000000065a78 /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+60)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #16 pc 000000000008bba8 /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #17 pc 00000000000136d8 /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+288)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #18 pc 0000000000104fec /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+140)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #19 pc 00000000000cf7c0 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #20 pc 00000000000721a8 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] (no managed stack frames)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "Binder:25995_2" prio=5 tid=14 Native
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c00718 self=0x76ad28a000
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26017 nice=0 cgrp=default sched=0/0 handle=0x76adbadd50
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 14844270 5335415 16 ) utm=0 stm=1 core=2 HZ=100
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76adab7000-0x76adab9000 stackSize=991KB
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26017/stack)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 00000000000baf44 /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+4)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 0000000000078a84 /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+132)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 0000000000064f84 /system/lib64/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+256)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 0000000000065158 /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+24)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #4 pc 0000000000065a78 /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+60)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #5 pc 000000000008bba8 /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #6 pc 00000000000136d8 /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+288)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #7 pc 0000000000104fec /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+140)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #8 pc 00000000000cf7c0 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #9 pc 00000000000721a8 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] (no managed stack frames)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "Binder:25995_3" prio=5 tid=16 Native
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c00790 self=0x76ad29b800
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26025 nice=0 cgrp=default sched=0/0 handle=0x76ad9a7d50
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 1631610940 225956755 1465 ) utm=133 stm=29 core=6 HZ=100
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76ad8b1000-0x76ad8b3000 stackSize=991KB
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26025/stack)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 000000000006cbbc /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000015c2a0 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+156)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 00000000003d7c48 /apex/com.android.runtime/lib64/libart.so (art::JNI::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, std::__va_list)+484)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 00000000001015c4 /system/lib64/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+116)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #4 pc 00000000001c3788 /system/lib64/libandroid_runtime.so (android::JNISurfaceTextureContext::onFrameAvailable(android::BufferItem const&)+64)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #5 pc 00000000000ad16c /system/lib64/libgui.so (android::ConsumerBase::onFrameAvailable(android::BufferItem const&)+172)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #6 pc 00000000000710f0 /system/lib64/libgui.so (android::BufferQueue::ProxyConsumerListener::onFrameAvailable(android::BufferItem const&)+104)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #7 pc 000000000007d148 /system/lib64/libgui.so (android::BufferQueueProducer::queueBuffer(int, android::IGraphicBufferProducer::QueueBufferInput const&, android::IGraphicBufferProducer::QueueBufferOutput*)+2320)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #8 pc 000000000008a008 /system/lib64/libgui.so (android::BnGraphicBufferProducer::onTransact(unsigned int, android::Parcel const&, android::Parcel*, unsigned int)+1784)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #9 pc 00000000000587a8 /system/lib64/libbinder.so (android::BBinder::transact(unsigned int, android::Parcel const&, android::Parcel*, unsigned int)+136)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #10 pc 0000000000065754 /system/lib64/libbinder.so (android::IPCThreadState::executeCommand(int)+1220)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #11 pc 00000000000651dc /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+156)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #12 pc 0000000000065a78 /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+60)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #13 pc 000000000008bba8 /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #14 pc 00000000000136d8 /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+288)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #15 pc 0000000000104fec /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+140)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #16 pc 00000000000cf7c0 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #17 pc 00000000000721a8 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] (no managed stack frames)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "Profile Saver" prio=5 tid=17 Native
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | group="" sCount=1 dsCount=0 flags=1 obj=0x12c00808 self=0x76a26a8400
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | sysTid=26050 nice=9 cgrp=default sched=0/0 handle=0x76ad5fbd50
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | state=S schedstat=( 13657818 1364581 31 ) utm=0 stm=0 core=2 HZ=100
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | stack=0x76ad505000-0x76ad507000 stackSize=991KB
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] | held mutexes=
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] kernel: (couldn't read /proc/self/task/26050/stack)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #00 pc 000000000006cbc0 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+32)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #1 pc 000000000015c6e0 /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::TimedWait(art::Thread*, long, int)+176)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #2 pc 0000000000362564 /apex/com.android.runtime/lib64/libart.so (art::ProfileSaver::Run()+708)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #3 pc 00000000003661b4 /apex/com.android.runtime/lib64/libart.so (art::ProfileSaver::RunProfileSaverThread(void*)+88)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #4 pc 00000000000cf7c0 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] native: #5 pc 00000000000721a8 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] (no managed stack frames)
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668]
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:668] "RenderThread" prio=10 tid=18 Native
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:677] JNI DETECTED ERROR IN APPLICATION: java_array == null
2021-12-02 10:32:05.998 25995-26109/com.jiangdg.libjpeg A/jiangdg.libjpe: runtime.cc:677] in call to SetPrimitiveArrayRegion

--------- beginning of crash

2021-12-02 10:32:05.999 25995-26109/com.jiangdg.libjpeg A/libc: Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 26109 (encode_jpeg), pid 25995 (jiangdg.libjpeg)

Are you reusing the same cinfo handle? MozJPEG needs to buffer an image, which IIRC uses its buffer pool.

Thanks for your reply! You mean I should cache the cinfo handle when I encode camera yuv stream?

Here is my code:

int32_t encode_to_memory(unsigned char* nv21, unsigned char** out, int32_t quality, int32_t width, int32_t height) {
    struct jpeg_compress_struct cInfo = {};
    struct jpeg_error_mgr jError = {};
    JSAMPROW row_pointer[1];
    unsigned char yuvBuf[width * 3];
    unsigned char *pY, *pU, *pV;
    int uLen;
    uLen = width * height / 4;
    if(nv21 == NULL){
        return -1;
    }

    cInfo.err = jpeg_std_error(&jError);
    jpeg_create_compress(&cInfo);
    unsigned char *outBuf = NULL;
    unsigned long outBufSize = 0;
    jpeg_mem_dest(&cInfo, (unsigned char **)&outBuf, &outBufSize);
    cInfo.image_width = width;
    cInfo.image_height = height;
    cInfo.input_components = 3;
    cInfo.in_color_space = JCS_YCbCr;
    cInfo.dct_method = JDCT_IFAST;
    cInfo.arith_code = FALSE;
    cInfo.optimize_coding = TRUE;
    jpeg_set_defaults(&cInfo);
    jpeg_set_quality(&cInfo, quality, TRUE);
    jpeg_start_compress(&cInfo, TRUE);

    unsigned char* yuv420sp = (unsigned char *)malloc(width * height * 3 /2);
    nv21_to_yuv420sp(nv21, yuv420sp, width, height);
    pY = yuv420sp;
    pU = yuv420sp + width * height;
    pV = yuv420sp + width * height + uLen;
    int i, j = 1;
    while (cInfo.next_scanline < cInfo.image_height) {
        if(j % 2 == 1 && j > 1){
            pU = yuv420sp + width * height + width / 2 * (j / 2);
            pV = yuv420sp + width * height * 5 / 4 + width / 2 *(j / 2);
        }
        for(i = 0; i < width; i += 2){
            yuvBuf[i * 3] = *pY++;
            yuvBuf[i * 3 + 1] = *pU;
            yuvBuf[i * 3 + 2] = *pV;

            yuvBuf[i * 3 + 3] = *pY++;
            yuvBuf[i * 3 + 4] = *pU++;
            yuvBuf[i * 3 + 5] = *pV++;
        }
        row_pointer[0] = yuvBuf;
        (void) jpeg_write_scanlines(&cInfo, row_pointer, 1);
        j++;
    }


    jpeg_finish_compress(&cInfo);
    jpeg_destroy_compress(&cInfo);
    if(NULL != *out) {
        free(*out);
    }
    *out = (unsigned char*)malloc(outBufSize);
    memset(*out,0, outBufSize);
    memcpy(*out, outBuf, outBufSize);

    free(yuv420sp);
    return outBufSize;
}

No, I mean you should not cache cinfo. What you're doing currently seems fine.

Except, you need to free outBuf.

I see. Thank you! By the way, I found that libmozjpeg takes 10~15 times as much time as libjpeg-turbo when I tryed to compress a 1280x720p yuv frame. That is to say, if libjpeg-turbo costs 50ms and libmozjpeg will cost 800ms .It is normal?

Yes, it's normal. MozJPEG trades encoding time for file size.

Get it! Thanks for your great library again!