Skip to content

SDK能否添加oom捕获? #357

@1mf2

Description

@1mf2

应用线上异常抛出OOM
"java.lang.OutOfMemoryError: Failed to allocate a 183879624 byte allocation with 25165824 free bytes and 159MB until OOM, target footprint 394818520, growth limit 536870912
at java.lang.StringFactory.newStringFromBytes(StringFactory.java:225)
at java.lang.StringFactory.newStringFromBytes(StringFactory.java:61)
at java.io.ByteArrayOutputStream.toString(ByteArrayOutputStream.java:245)
at com.tencent.sonic.sdk.SonicServer.readServerResponse(SonicServer.java:399)
at com.tencent.sonic.sdk.SonicServer.getResponseStream(SonicServer.java:315)
at com.tencent.sonic.sdk.StandardSonicSession.handleFlow_FirstLoad(StandardSonicSession.java:343)
at com.tencent.sonic.sdk.SonicSession.handleFlow_Connection(SonicSession.java:749)
at com.tencent.sonic.sdk.SonicSession.runSonicFlow(SonicSession.java:567)
at com.tencent.sonic.sdk.SonicSession.access$100(SonicSession.java:54)
at com.tencent.sonic.sdk.SonicSession$2.run(SonicSession.java:524)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:929)
"
"java.lang.OutOfMemoryError: Failed to allocate a 180720840 byte allocation with 45394656 free bytes and 43MB until OOM, max allowed footprint 536870912, growth limit 536870912
at libcore.util.CharsetUtils.toUtf8Bytes(Native Method)
at java.lang.String.getBytes(String.java:896)
at java.lang.String.getBytes(String.java:925)
at com.tencent.sonic.sdk.SonicUtils.getSHA1(SonicUtils.java:680)
at com.tencent.sonic.sdk.SonicServer.separateTemplateAndData(SonicServer.java:441)
at com.tencent.sonic.sdk.SonicServer.getTemplate(SonicServer.java:358)
at com.tencent.sonic.sdk.SonicSession.doSaveSonicCache(SonicSession.java:1027)
at com.tencent.sonic.sdk.SonicSession$1.handleMessage(SonicSession.java:477)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:198)
at android.os.HandlerThread.run(HandlerThread.java:65)

SDK版本是3.1.0版本

机型在oppo Android 8.1.0机型和荣耀 android 10和小米android10上出现过

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions