DispatchedNumber

@objc public class DispatchedNumber: NSObject, DispatchedValueWrapper

Thread-safe value wrapper for NSNumber, using dispatch queues to achieve synchronization. This class is KVO-compliant. You may observe its value property to be notified of changes. This is applicable to Cocoa bindings.

Seealso

DispatchedValueWrapper
  • The wrapped value type, NSNumber.

    Declaration

    Swift

    public typealias ValueType = NSNumber?
  • Initializes a dispatched value object.
    This initializer will use the main queue for synchronization.

    Declaration

    Swift

    public required convenience init( value: ValueType )
  • Initializes a dispatched value object.

    Declaration

    Swift

    public required init( value: ValueType = nil, queue: DispatchQueue = DispatchQueue.main )
  • The wrapped NSNumber value.
    This property is KVO-compliant.

    Declaration

    Swift

    @objc public dynamic var value: ValueType
  • Atomically gets the wrapped NSNumber value.
    The getter will be executed on the queue specified in the initialzer.

    Declaration

    Swift

    public func get() -> ValueType

    Return Value

    The actual NSNumber value.

  • Atomically sets the wrapped NSNumber value.
    The setter will be executed on the queue specified in the initialzer.

    -parameter value: The NSNumber value to set.

    Declaration

    Swift

    public func set( _ value: ValueType )
  • Atomically executes a closure on the wrapped NSNumber value.
    The closure will be passed the actual value of the wrapped NSNumber value, and is guaranteed to be executed atomically, on the queue specified in the initialzer.

    -parameter closure: The close to execute.

    Declaration

    Swift

    public func execute( closure: ( ValueType ) -> Swift.Void )
  • Atomically executes a closure on the wrapped NSNumber value, returning some value. The closure will be passed the actual value of the wrapped NSNumber value, and is guaranteed to be executed atomically, on the queue specified in the initialzer.

    -parameter closure: The close to execute, returning some value.

    Declaration

    Swift

    public func execute< R >( closure: ( ValueType ) -> R ) -> R