DispatchedObject
@objc public class DispatchedObject: NSObject, DispatchedValueWrapper
Thread-safe value wrapper for NSObject, 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,
NSObject.Declaration
Swift
public typealias ValueType = NSObject? -
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
NSObjectvalue.
This property is KVO-compliant.Declaration
Swift
@objc public dynamic var value: ValueType -
Atomically gets the wrapped
NSObjectvalue.
The getter will be executed on the queue specified in the initialzer.Declaration
Swift
public func get() -> ValueTypeReturn Value
The actual
NSObjectvalue. -
Atomically sets the wrapped
NSObjectvalue.
The setter will be executed on the queue specified in the initialzer.-parameter value: The
NSObjectvalue to set.Declaration
Swift
public func set( _ value: ValueType ) -
Atomically executes a closure on the wrapped
NSObjectvalue.
The closure will be passed the actual value of the wrappedNSObjectvalue, 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
NSObjectvalue, returning some value. The closure will be passed the actual value of the wrappedNSObjectvalue, 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
View on GitHub
DispatchedObject Class Reference