<!--
{
  "availability" : [
    "iOS: 14.0.0 -",
    "iPadOS: 14.0.0 -",
    "macCatalyst: 14.0.0 -",
    "macOS: 11.0.0 -",
    "tvOS: 14.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 7.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "System",
  "identifier" : "/documentation/System/FileDescriptor/OpenOptions/nonBlocking",
  "metadataVersion" : "0.1.0",
  "role" : "Type Property",
  "symbol" : {
    "kind" : "Type Property",
    "modules" : [
      "System"
    ],
    "preciseIdentifier" : "s:6System14FileDescriptorV11OpenOptionsV11nonBlockingAEvpZ"
  },
  "title" : "nonBlocking"
}
-->

# nonBlocking

Indicates that opening the file doesn’t
wait for the file or device to become available.

```
static var nonBlocking: FileDescriptor.OpenOptions { get }
```

## Discussion

If this option is specified,
the system doesn’t wait for the device or file
to be ready or available.
If the
<doc:FileDescriptor/open(_:_:options:permissions:retryOnInterrupt:)-2266j>
call would result in the process being blocked for some reason,
that method returns immediately.
This flag also has the effect of making all
subsequent input and output operations on the open file nonblocking.

The corresponding C constant is `O_NONBLOCK`.

---

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)