<!--
{
  "availability" : [
    "watchOS: 6.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "WatchKit",
  "identifier" : "/documentation/WatchKit/WKExtendedRuntimeSessionErrorCode/exceededResourceLimits",
  "metadataVersion" : "0.1.0",
  "role" : "Case",
  "symbol" : {
    "kind" : "Case",
    "modules" : [
      "WatchKit"
    ],
    "preciseIdentifier" : "c:@E@WKExtendedRuntimeSessionErrorCode@WKExtendedRuntimeSessionErrorExceededResourceLimits"
  },
  "title" : "WKExtendedRuntimeSessionErrorCode.exceededResourceLimits"
}
-->

# WKExtendedRuntimeSessionErrorCode.exceededResourceLimits

The session exceeded its resource limits.

```
case exceededResourceLimits
```

## Discussion

During an extended runtime session, the system limits your app’s amortized CPU usage over time. If your app exceeds the limits during a 60-second window, the system cancels the session. Monitoring usage-per-minute allows your app to experience brief spikes of CPU usage, as long as the average remains low.

When the system cancels your session, it calls your delegate’s [`extendedRuntimeSession(_:didInvalidateWith:error:)`](/documentation/WatchKit/WKExtendedRuntimeSessionDelegate/extendedRuntimeSession(_:didInvalidateWith:error:)) method and passes a [`WKExtendedRuntimeSessionInvalidationReason.error`](/documentation/WatchKit/WKExtendedRuntimeSessionInvalidationReason/error) reason with a [`WKExtendedRuntimeSessionErrorCode.exceededResourceLimits`](/documentation/WatchKit/WKExtendedRuntimeSessionErrorCode/exceededResourceLimits) error.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)