Loading...
Searching...
No Matches
WaitFreeListeners< Listener > Class Template Reference

Public Member Functions

 WaitFreeListeners ()=default
void add (Listener &r)
 Registers a receiver, not wait-free.
void remove (Listener &l)
 Removes a listener, not wait-free.
template<typename Callback>
void call (Callback &&callback) const
 Notifies all registered receivers, wait-free, may be called concurrently with add/remove, but may not be called concurrently with itself.

Constructor & Destructor Documentation

◆ WaitFreeListeners()

template<typename Listener>
WaitFreeListeners< Listener >::WaitFreeListeners ( )
default

Member Function Documentation

◆ add()

template<typename Listener>
void WaitFreeListeners< Listener >::add ( Listener & r)

Registers a receiver, not wait-free.

References jassert.

◆ remove()

template<typename Listener>
void WaitFreeListeners< Listener >::remove ( Listener & l)

Removes a listener, not wait-free.

◆ call()

template<typename Listener>
template<typename Callback>
void WaitFreeListeners< Listener >::call ( Callback && callback) const

Notifies all registered receivers, wait-free, may be called concurrently with add/remove, but may not be called concurrently with itself.

References GenericScopedTryLock< LockType >::isLocked().

linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram