We're having the same issue (app gets killed/restarted after a couple minutes of high activity while running in the foreground), and a bit stumped. I see this query multiple times here and on other forums, but no clear answers yet. Seems pretty fundamental.
Clearly the foreground app should be able to make high use of the CPU; some games pretty much peg it as long as they are running, to the point the phone gets hot. So what exactly is the criterion that's being violated here?
In our case, most of the processing occurs in WebKit, with more than half of it occurring in a web worker, if that's relevant.
Crash log:
Command: com.apple.WebKit.WebContent
Path: /System/Library/Frameworks/WebKit.framework/XPCServices/com.apple.WebKit.WebContent.xpc/com.apple.WebKit.WebContent
Identifier: com.apple.WebKit.WebContent
Version: 8609 (8609.3.5.0.2)
PID: 9184
Event: cpu usage
Action taken: none
CPU: 90 seconds cpu time over 156 seconds (58% cpu average), exceeding limit of 50% cpu over 180 seconds
CPU limit: 90s
Limit duration: 180s
CPU used: 90s
CPU duration: 156s
Duration: 156.40s
Duration Sampled: 153.35s
Steps: 77