---
title: "wait(timeout:)"
framework: dispatch
role: symbol
role_heading: Instance Method
path: "dispatch/dispatchsemaphore/wait(timeout:)"
---

# wait(timeout:)

Waits for, or decrements, a semaphore.

## Declaration

```swift
func wait(timeout: DispatchTime) -> DispatchTimeoutResult
```

## Parameters

- `timeout`: The latest time to wait for a signal.

## Discussion

Discussion Decrement the counting semaphore. If the resulting value is less than zero, this function waits for a signal to occur before returning.

## See Also

### Blocking on the Semaphore

- [wait()](dispatch/dispatchsemaphore/wait().md)
- [wait(wallTimeout:)](dispatch/dispatchsemaphore/wait(walltimeout:).md)
