Checks a dispatch condition necessary for further execution.


func dispatchPrecondition(condition: @autoclosure () -> DispatchPredicate)



A dispatch predicate for the current context to check.


Use this function to detect conditions about the current execution context that must prevent the program from proceeding even in shipping code.

  • In playgrounds and -Onone builds (the default for Xcode’s Debug configuration): if condition evaluates to false, stop program execution in a debuggable state.

  • In -O builds (the default for Xcode’s Release configuration): if condition evaluates to false, stop program execution.

  • In -Ounchecked builds, condition is not evaluated, but the optimizer may assume that it would evaluate to true. Failure to satisfy that assumption in -Ounchecked builds is a serious programming error.

See Also

Working with Dispatch Objects

class DispatchObject

DispatchObject is the base class for many dispatch types, including DispatchQueue, DispatchGroup, and DispatchSource.

enum DispatchPredicate

DispatchPredicate represents logical conditions that can be evaluated within a given execution context using the dispatchPrecondition(condition:) method.

func activate()

Activates the dispatch object.