ObjFW
|
A class implementing a condition variable for thread synchronization. More...
#include <ObjFW/ObjFW.h>
Instance Methods | |
(void) | - wait |
Blocks the current thread until another thread calls signal or broadcast. | |
(void) | - waitForConditionOrExecSignal: |
Blocks the current thread until another thread calls signal, broadcast or an Exec Signal is received. | |
(bool) | - waitForTimeInterval: |
Blocks the current thread until another thread calls signal, broadcast or the timeout is reached. | |
(bool) | - waitForTimeInterval:orExecSignal: |
Blocks the current thread until another thread calls signal, broadcast, the timeout is reached or an Exec Signal is received. | |
(bool) | - waitUntilDate: |
Blocks the current thread until another thread calls signal, broadcast or the timeout is reached. | |
(bool) | - waitUntilDate:orExecSignal: |
Blocks the current thread until another thread calls signal, broadcast, the timeout is reached or an Exec Signal is received. | |
(void) | - signal |
Signals the next waiting thread to continue. | |
(void) | - broadcast |
Signals all threads to continue. | |
Instance Methods inherited from OFObject | |
(instancetype) | - init |
Initializes an already allocated object. | |
(nullable OFMethodSignature *) | - methodSignatureForSelector: |
Returns the method signature for the specified selector. | |
(void) | - dealloc |
Deallocates the object. | |
(void) | - performSelector:afterDelay: |
Performs the specified selector after the specified delay. | |
(void) | - performSelector:withObject:afterDelay: |
Performs the specified selector with the specified object after the specified delay. | |
(void) | - performSelector:withObject:withObject:afterDelay: |
Performs the specified selector with the specified objects after the specified delay. | |
(void) | - performSelector:withObject:withObject:withObject:afterDelay: |
Performs the specified selector with the specified objects after the specified delay. | |
(void) | - performSelector:withObject:withObject:withObject:withObject:afterDelay: |
Performs the specified selector with the specified objects after the specified delay. | |
(void) | - performSelector:onThread:waitUntilDone: |
Performs the specified selector on the specified thread. | |
(void) | - performSelector:onThread:withObject:waitUntilDone: |
Performs the specified selector on the specified thread with the specified object. | |
(void) | - performSelector:onThread:withObject:withObject:waitUntilDone: |
Performs the specified selector on the specified thread with the specified objects. | |
(void) | - performSelector:onThread:withObject:withObject:withObject:waitUntilDone: |
Performs the specified selector on the specified thread with the specified objects. | |
(void) | - performSelector:onThread:withObject:withObject:withObject:withObject:waitUntilDone: |
Performs the specified selector on the specified thread with the specified objects. | |
(void) | - performSelectorOnMainThread:waitUntilDone: |
Performs the specified selector on the main thread. | |
(void) | - performSelectorOnMainThread:withObject:waitUntilDone: |
Performs the specified selector on the main thread with the specified object. | |
(void) | - performSelectorOnMainThread:withObject:withObject:waitUntilDone: |
Performs the specified selector on the main thread with the specified objects. | |
(void) | - performSelectorOnMainThread:withObject:withObject:withObject:waitUntilDone: |
Performs the specified selector on the main thread with the specified objects. | |
(void) | - performSelectorOnMainThread:withObject:withObject:withObject:withObject:waitUntilDone: |
Performs the specified selector on the main thread with the specified objects. | |
(void) | - performSelector:onThread:afterDelay: |
Performs the specified selector on the specified thread after the specified delay. | |
(void) | - performSelector:onThread:withObject:afterDelay: |
Performs the specified selector on the specified thread with the specified object after the specified delay. | |
(void) | - performSelector:onThread:withObject:withObject:afterDelay: |
Performs the specified selector on the specified thread with the specified objects after the specified delay. | |
(void) | - performSelector:onThread:withObject:withObject:withObject:afterDelay: |
Performs the specified selector on the specified thread with the specified objects after the specified delay. | |
(void) | - performSelector:onThread:withObject:withObject:withObject:withObject:afterDelay: |
Performs the specified selector on the specified thread with the specified objects after the specified delay. | |
(nullable id) | - forwardingTargetForSelector: |
This method is called when resolveClassMethod: or resolveInstanceMethod: returned false. It should return a target to which the message should be forwarded. | |
(void) | - doesNotRecognizeSelector: |
Handles messages which are not understood by the receiver. | |
Instance Methods inherited from <OFObject> | |
(unsigned long) | - hash |
Returns a hash for the object. | |
(unsigned int) | - retainCount |
Returns the retain count. | |
(bool) | - isProxy |
Returns whether the object is a proxy object. | |
(bool) | - isKindOfClass: |
Returns a boolean whether the object is of the specified kind. | |
(bool) | - isMemberOfClass: |
Returns a boolean whether the object is a member of the specified class. | |
(bool) | - respondsToSelector: |
Returns a boolean whether the object responds to the specified selector. | |
(nullable IMP) | - methodForSelector: |
Returns the implementation for the specified selector. | |
(nullable id) | - performSelector: |
Performs the specified selector. | |
(nullable id) | - performSelector:withObject: |
Performs the specified selector with the specified object. | |
(nullable id) | - performSelector:withObject:withObject: |
Performs the specified selector with the specified objects. | |
(nullable id) | - performSelector:withObject:withObject:withObject: |
Performs the specified selector with the specified objects. | |
(nullable id) | - performSelector:withObject:withObject:withObject:withObject: |
Performs the specified selector with the specified objects. | |
(bool) | - isEqual: |
Checks two objects for equality. | |
(instancetype) | - retain |
Increases the retain count. | |
(void) | - release |
Decreases the retain count. | |
(instancetype) | - autorelease |
Adds the object to the topmost autorelease pool of the thread's autorelease pool stack. | |
(instancetype) | - self |
Returns the receiver. | |
(bool) | - allowsWeakReference |
Returns whether the object allows a weak reference. | |
(bool) | - retainWeakReference |
Retain a weak reference to this object. | |
Instance Methods inherited from <OFLocking> | |
(void) | - lock |
Locks the lock. | |
(bool) | - tryLock |
Tries to lock the lock. | |
(void) | - unlock |
Unlocks the lock. | |
Class Methods | |
(instancetype) | + condition |
Creates a new condition. | |
Class Methods inherited from OFMutex | |
(instancetype) | + mutex |
Creates a new mutex. | |
Class Methods inherited from OFObject | |
(void) | + load |
A method which is called once when the class is loaded into the runtime. | |
(void) | + unload |
A method which is called when the class is unloaded from the runtime. | |
(void) | + initialize |
A method which is called the moment before the first call to the class is being made. | |
(instancetype) | + alloc |
Allocates memory for an instance of the class and sets up the memory pool for the object. | |
(Class) | + class |
Returns the class. | |
(OFString *) | + className |
Returns the name of the class as a string. | |
(bool) | + isSubclassOfClass: |
Returns a boolean whether the class is a subclass of the specified class. | |
(nullable Class) | + superclass |
Returns the superclass of the class. | |
(bool) | + instancesRespondToSelector: |
Checks whether instances of the class respond to a given selector. | |
(bool) | + conformsToProtocol: |
Checks whether the class conforms to a given protocol. | |
(nullable IMP) | + instanceMethodForSelector: |
Returns the implementation of the instance method for the specified selector. | |
(nullable OFMethodSignature *) | + instanceMethodSignatureForSelector: |
Returns the method signature of the instance method for the specified selector. | |
(OFString *) | + description |
Returns a description for the class, which is usually the class name. | |
(nullable IMP) | + replaceClassMethod:withMethodFromClass: |
Replaces a class method with a class method from another class. | |
(nullable IMP) | + replaceInstanceMethod:withMethodFromClass: |
Replaces an instance method with an instance method from another class. | |
(void) | + inheritMethodsFromClass: |
Adds all methods from the specified class to the class that is the receiver. | |
(bool) | + resolveClassMethod: |
Try to resolve the specified class method. | |
(bool) | + resolveInstanceMethod: |
Try to resolve the specified instance method. | |
(id) | + copy |
Returns the class. | |
Additional Inherited Members | |
Protected Attributes inherited from OFMutex | |
Properties inherited from OFObject | |
OFString * | className |
The name of the object's class. | |
OFString * | description |
A description for the object. | |
Properties inherited from <OFLocking> | |
OFString * | name |
The name of the lock. | |
A class implementing a condition variable for thread synchronization.
- (void) broadcast |
Signals all threads to continue.
OFBroadcastConditionFailedException | Broadcasting the condition failed |
+ (instancetype) condition |
Creates a new condition.
- (void) signal |
Signals the next waiting thread to continue.
OFSignalConditionFailedException | Signaling the condition failed |
- (void) wait |
Blocks the current thread until another thread calls signal or broadcast.
OFWaitForConditionFailedException | Waiting for the condition failed |
- (void) waitForConditionOrExecSignal: | (ULONG *) | signalMask |
Blocks the current thread until another thread calls signal, broadcast or an Exec Signal is received.
signalMask | A pointer to a signal mask of Exec Signals to receive. This is modified and set to the mask of signals received. |
OFWaitForConditionFailedException | Waiting for the condition failed |
- (bool) waitForTimeInterval: | (OFTimeInterval) | timeInterval |
Blocks the current thread until another thread calls signal, broadcast or the timeout is reached.
timeInterval | The time interval until the timeout is reached |
OFWaitForConditionFailedException | Waiting for the condition failed |
- (bool) waitForTimeInterval: | (OFTimeInterval) | timeInterval | |
orExecSignal: | (ULONG *) | signalMask |
Blocks the current thread until another thread calls signal, broadcast, the timeout is reached or an Exec Signal is received.
timeInterval | The time interval until the timeout is reached |
signalMask | A pointer to a signal mask of Exec Signals to receive. This is modified and set to the mask of signals received. |
OFWaitForConditionFailedException | Waiting for the condition failed |
- (bool) waitUntilDate: | (OFDate *) | date |
Blocks the current thread until another thread calls signal, broadcast or the timeout is reached.
date | The date at which the timeout is reached |
OFWaitForConditionFailedException | Waiting for the condition failed |
- (bool) waitUntilDate: | (OFDate *) | date | |
orExecSignal: | (ULONG *) | signalMask |
Blocks the current thread until another thread calls signal, broadcast, the timeout is reached or an Exec Signal is received.
date | The date at which the timeout is reached |
signalMask | A pointer to a signal mask of Exec Signals to receive. This is modified and set to the mask of signals received. |
OFWaitForConditionFailedException | Waiting for the condition failed |