Default and only constructor.
Broadcasts to all waiting threads, waking all of them up.
Returns true if the object had been initialized successfully, false if an error occurred.
Signals the object waking up at most one thread.
Waits until the condition is signalled.
Waits until the condition is signalled or the timeout has elapsed.