uvw 2.12.1
Loading...
Searching...
No Matches
uvw::AsyncHandle Class Referencefinal

The AsyncHandle handle. More...

#include <async.h>

Inheritance diagram for uvw::AsyncHandle:
Collaboration diagram for uvw::AsyncHandle:

Public Member Functions

bool init ()
 Initializes the handle.
 
void send ()
 Wakeups the event loop and emits the AsyncEvent event.
 
- Public Member Functions inherited from uvw::Handle< AsyncHandle, uv_async_t >
HandleCategory category () const noexcept
 Gets the category of the handle.
 
HandleType type () const noexcept
 Gets the type of the handle.
 
bool active () const noexcept
 Checks if the handle is active.
 
bool closing () const noexcept
 Checks if a handle is closing or closed.
 
void close () noexcept
 Request handle to be closed.
 
void reference () noexcept
 Reference the given handle.
 
void unreference () noexcept
 Unreference the given handle.
 
bool referenced () const noexcept
 Checks if the given handle referenced.
 
std::size_t size () const noexcept
 Returns the size of the underlying handle type.
 
int sendBufferSize ()
 Gets the size of the send buffer used for the socket.
 
bool sendBufferSize (int value)
 Sets the size of the send buffer used for the socket.
 
int recvBufferSize ()
 Gets the size of the receive buffer used for the socket.
 
bool recvBufferSize (int value)
 Sets the size of the receive buffer used for the socket.
 
OSFileDescriptor fd () const
 Gets the platform dependent file descriptor equivalent.
 
- Public Member Functions inherited from uvw::Resource< AsyncHandle, uv_async_t >
std::shared_ptr< R > data () const
 Gets user-defined data. uvw won't use this field in any case.
 
void data (std::shared_ptr< void > uData)
 Sets arbitrary data. uvw won't use this field in any case.
 
- Public Member Functions inherited from uvw::UnderlyingType< AsyncHandle, uv_async_t >
Looploop () const noexcept
 Gets the loop from which the resource was originated.
 
const uv_async_t * raw () const noexcept
 Gets the underlying raw data structure.
 
uv_async_t * raw () noexcept
 Gets the underlying raw data structure.
 
- Public Member Functions inherited from uvw::Emitter< AsyncHandle >
Connection< E > on (Listener< E > f)
 Registers a long-lived listener with the event emitter.
 
Connection< E > once (Listener< E > f)
 Registers a short-lived listener with the event emitter.
 
void erase (Connection< E > conn) noexcept
 Disconnects a listener from the event emitter.
 
void clear () noexcept
 Disconnects all the listeners for the given event type.
 
void clear () noexcept
 Disconnects all the listeners.
 
bool empty () const noexcept
 Checks if there are listeners registered for the specific event.
 
bool empty () const noexcept
 Checks if there are listeners registered with the event emitter.
 

Additional Inherited Members

- Public Types inherited from uvw::Emitter< AsyncHandle >
- Static Public Member Functions inherited from uvw::UnderlyingType< AsyncHandle, uv_async_t >
static std::shared_ptr< AsyncHandlecreate (Args &&...args)
 Creates a new resource of the given type.
 
- Protected Types inherited from uvw::Resource< AsyncHandle, uv_async_t >
- Protected Member Functions inherited from uvw::Handle< AsyncHandle, uv_async_t >
- Protected Member Functions inherited from uvw::Resource< AsyncHandle, uv_async_t >
- Protected Member Functions inherited from uvw::UnderlyingType< AsyncHandle, uv_async_t >
- Protected Member Functions inherited from uvw::Emitter< AsyncHandle >
- Static Protected Member Functions inherited from uvw::Handle< AsyncHandle, uv_async_t >

Detailed Description

The AsyncHandle handle.

Async handles allow the user to wakeup the event loop and get an event emitted from another thread.

To create an AsyncHandle through a Loop, no arguments are required.

Definition at line 25 of file async.h.

Member Function Documentation

◆ init()

bool uvw::AsyncHandle::init ( )

Initializes the handle.

Unlike other handle initialization functions, it immediately starts the handle.

Returns
True in case of success, false otherwise.

◆ send()

void uvw::AsyncHandle::send ( )

Wakeups the event loop and emits the AsyncEvent event.

It’s safe to call this function from any thread.
An AsyncEvent event will be emitted on the loop thread.

See the official documentation for further details.


The documentation for this class was generated from the following file: