---
title: "wrappingAdd(_:ordering:)"
framework: synchronization
role: symbol
role_heading: Instance Method
path: "synchronization/atomic/wrappingadd(_:ordering:)-1cynr"
---

# wrappingAdd(_:ordering:)

Perform an atomic wrapping add operation and return the old and new value, applying the specified memory ordering.

## Declaration

```swift
@discardableResult func wrappingAdd(_ operand: UInt16, ordering: AtomicUpdateOrdering) -> (oldValue: UInt16, newValue: UInt16)
```

## Parameters

- `operand`: An integer value.
- `ordering`: The memory ordering to apply on this operation.

## Return Value

Return Value A tuple containing the original value before the operation and the new value after the operation.

## Discussion

Discussion note: This operation silently wraps around on overflow, like the &+ operator does on UInt16 values.
