One Logo Pool Ball
Developer Tools · IOS API REFERENCE

Synchronization

Build synchronization constructs using low-level, primitive operations.

49 types

24 callable entries

233 skipped

9% entry coverage

Generated from iOS SDK 27.1. Availability is shown on each declaration; permissions and entitlements still apply.

Types

Atomic

struct · iOS 18.0+

AtomicLazyReference

struct · iOS 18.0+

AtomicLoadOrdering

struct · iOS 18.0+

AtomicOptionalRepresentable

protocol · iOS 18.0+

AtomicRepresentable

protocol · iOS 18.0+

AtomicStoreOrdering

struct · iOS 18.0+

AtomicUpdateOrdering

struct · iOS 18.0+

Bool.AtomicRepresentation

typealias · iOS 18.0+

Double.AtomicRepresentation

typealias · iOS 18.0+

Duration.AtomicRepresentation

typealias · iOS 18.0+

Float.AtomicRepresentation

typealias · iOS 18.0+

Float16.AtomicRepresentation

typealias · iOS 18.0+

Int.AtomicRepresentation

typealias · iOS 18.0+

Int128.AtomicRepresentation

typealias · iOS 18.0+

Int16.AtomicRepresentation

typealias · iOS 18.0+

Int32.AtomicRepresentation

typealias · iOS 18.0+

Int64.AtomicRepresentation

typealias · iOS 18.0+

Int8.AtomicRepresentation

typealias · iOS 18.0+

Mutex

struct · iOS 18.0+

Never.AtomicRepresentation

typealias · iOS 18.0+

ObjectIdentifier.AtomicOptionalRepresentation

typealias · iOS 18.0+

ObjectIdentifier.AtomicRepresentation

typealias · iOS 18.0+

OpaquePointer.AtomicOptionalRepresentation

typealias · iOS 18.0+

OpaquePointer.AtomicRepresentation

typealias · iOS 18.0+

Optional.AtomicRepresentation

typealias · iOS 18.0+

RawRepresentable.AtomicOptionalRepresentation

typealias · iOS 18.0+

RawRepresentable.AtomicRepresentation

typealias · iOS 18.0+

UInt.AtomicRepresentation

typealias · iOS 18.0+

UInt128.AtomicRepresentation

typealias · iOS 18.0+

UInt16.AtomicRepresentation

typealias · iOS 18.0+

UInt32.AtomicRepresentation

typealias · iOS 18.0+

UInt64.AtomicRepresentation

typealias · iOS 18.0+

UInt8.AtomicRepresentation

typealias · iOS 18.0+

Unmanaged.AtomicOptionalRepresentation

typealias · iOS 18.0+

Unmanaged.AtomicRepresentation

typealias · iOS 18.0+

UnsafeBufferPointer.AtomicRepresentation

typealias · iOS 18.0+

UnsafeMutableBufferPointer.AtomicRepresentation

typealias · iOS 18.0+

UnsafeMutablePointer.AtomicOptionalRepresentation

typealias · iOS 18.0+

UnsafeMutablePointer.AtomicRepresentation

typealias · iOS 18.0+

UnsafeMutableRawBufferPointer.AtomicRepresentation

typealias · iOS 18.0+

UnsafeMutableRawPointer.AtomicOptionalRepresentation

typealias · iOS 18.0+

UnsafeMutableRawPointer.AtomicRepresentation

typealias · iOS 18.0+

UnsafePointer.AtomicOptionalRepresentation

typealias · iOS 18.0+

UnsafePointer.AtomicRepresentation

typealias · iOS 18.0+

UnsafeRawBufferPointer.AtomicRepresentation

typealias · iOS 18.0+

UnsafeRawPointer.AtomicOptionalRepresentation

typealias · iOS 18.0+

UnsafeRawPointer.AtomicRepresentation

typealias · iOS 18.0+

WordPair

struct · iOS 18.0+

WordPair.AtomicRepresentation

typealias · iOS 18.0+

Functions and constants

function · iOS 18.0+

atomicMemoryFence

TypeScript
atomicMemoryFence(ordering: AtomicUpdateOrdering): void
Swift declaration
func atomicMemoryFence(ordering: AtomicUpdateOrdering)

Establishes a memory ordering without associating it with a particular atomic operation. - A relaxed fence has no effect. - An acquiring fence ties to any preceding atomic operation that reads a value, and synchronizes with any releasing operation whose value was read. - A releasing fence ties to any subsequent atomic operation that modifies a value, and synchronizes with any acquiring operation that reads the result. - An acquiring and releasing fence is a combination of an acquiring and a releasing fence. - A sequentially consistent fence behaves like an acquiring and releasing fence, and ensures that the fence itself is part of the single, total ordering for all sequentially consistent operations. This operation corresponds to `std::atomic_thread_fence` in C++. Be aware that Thread Sanitizer does not support fences and may report false-positive races for data protected by a fence.

Skipped declarations

233 declarations were excluded from these bindings. Each reason comes from the generator or the iOS SDK compiler.

Bool.encodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

Bool.decodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

Float16.encodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

Float16.decodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

Float.encodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

Float.decodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

Double.encodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

Double.decodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

RawRepresentable.encodeAtomicOptionalRepresentation(_:)

The containing type is outside the generated SDK type index.

RawRepresentable.decodeAtomicOptionalRepresentation(_:)

The containing type is outside the generated SDK type index.

Optional.encodeAtomicRepresentation(_:)

This declaration needs Swift generic type arguments. (no canonical witness for Wrapped)

Optional.decodeAtomicRepresentation(_:)

This declaration needs Swift generic type arguments. (no canonical witness for Wrapped)

UnsafePointer.encodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafePointer.decodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafePointer.encodeAtomicOptionalRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafePointer.decodeAtomicOptionalRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeMutablePointer.encodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeMutablePointer.decodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeMutablePointer.encodeAtomicOptionalRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeMutablePointer.decodeAtomicOptionalRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeRawPointer.encodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeRawPointer.decodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeRawPointer.encodeAtomicOptionalRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeRawPointer.decodeAtomicOptionalRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeMutableRawPointer.encodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeMutableRawPointer.decodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeMutableRawPointer.encodeAtomicOptionalRepresentation(_:)

The containing type is outside the generated SDK type index.

UnsafeMutableRawPointer.decodeAtomicOptionalRepresentation(_:)

The containing type is outside the generated SDK type index.

Unmanaged.encodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.

Unmanaged.decodeAtomicRepresentation(_:)

The containing type is outside the generated SDK type index.