how to detect heavy task by instrument?

my app randomly has been terminated by IOS at some time.

Data Source: Microstackshots
Shared Cache: 0x36a90000 F409EE7C-4825-377F-B10A-B53F999FA728

Command: VCS
Path: /private/var/containers/Bundle/Application/A71F3652-CBE2-4B12-A591-78B53C98EF0A/myapp.app/myapp
Version: 3.8.0 (3.8.0.2629)
Beta Identifier: 4DD81AC4-16E8-4B51-A4FE-D51FE71935F4
PID: 748

Event: cpu usage
Action taken: Process killed
CPU: 9 seconds cpu time over 9 seconds (100% cpu average), exceeding limit of 60% cpu over 15 seconds
CPU limit: 9s
Limit duration: 15s
CPU used: 9s
CPU duration: 9s
Duration: 9.02s
Duration Sampled: 4.92s
Steps: 3

Hardware model: iPhone12,1
Active cpus: 6


Heaviest stack for the target process:
3 ??? (libsystempthread.dylib + 14100) [0x1b6c03714]
3 ??? (libdispatch.dylib + 80168) [0x1b6bac928]
3 ??? (libdispatch.dylib + 46304) [0x1b6ba44e0]
3 ??? (libdispatch.dylib + 131152) [0x1b6bb9050]
3 ??? (libdispatch.dylib + 131376) [0x1b6bb9130]
3 ??? (libsystem
kernel.dylib + 166176) [0x1b6ce4920]


What is best way to detect heavy task by instruments ?

I have tried, but I can't see which part cause this issue?

BTW: I see the heavy task is audio session, but cause my app is voip, and only when app runs in background receive PUshkit to get CallKit, it will occur

Thanks,


Post not yet marked as solved Up vote post of Vocera Down vote post of Vocera
2.5k views