<!--
{
  "availability" : [
    "iOS: 13.0.0 -",
    "iPadOS: 13.0.0 -",
    "macCatalyst: 13.0.0 -",
    "macOS: 10.15.0 -",
    "tvOS: 13.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 6.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Swift",
  "identifier" : "/documentation/Swift/Actor/unownedExecutor",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "Swift"
    ],
    "preciseIdentifier" : "s:ScA15unownedExecutorScevp"
  },
  "title" : "unownedExecutor"
}
-->

# unownedExecutor

Retrieve the executor for this actor as an optimized, unowned
reference.

```
nonisolated var unownedExecutor: UnownedSerialExecutor { get }
```

## Discussion

This property must always evaluate to the same executor for a
given actor instance, and holding on to the actor must keep the
executor alive.

This property will be implicitly accessed when work needs to be
scheduled onto this actor.  These accesses may be merged,
eliminated, and rearranged with other work, and they may even
be introduced when not strictly required.  Visible side effects
are therefore strongly discouraged within this property.

> SeeAlso: ``doc://com.apple.Swift/documentation/Swift/SerialExecutor``

> SeeAlso: ``doc://com.apple.Swift/documentation/Swift/TaskExecutor``

---

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)