|
int | shutdown () |
| Shutdowns the outgoing (write) side of a duplex stream.
|
|
int | listen (int backlog=DEFAULT_BACKLOG) |
| Starts listening for incoming connections.
|
|
template<typename S > |
int | accept (S &ref) |
| Accepts incoming connections.
|
|
int | read () |
| Starts reading data from an incoming stream.
|
|
int | stop () |
| Stops reading data from the stream.
|
|
template<typename Deleter > |
int | write (std::unique_ptr< char[], Deleter > data, unsigned int len) |
| Writes data to the stream.
|
|
int | write (char *data, unsigned int len) |
| Writes data to the stream.
|
|
template<typename S , typename Deleter > |
int | write (S &send, std::unique_ptr< char[], Deleter > data, unsigned int len) |
| Extended write function for sending handles over a pipe handle.
|
|
template<typename S > |
int | write (S &send, char *data, unsigned int len) |
| Extended write function for sending handles over a pipe handle.
|
|
int | try_write (std::unique_ptr< char[]> data, unsigned int len) |
| Queues a write request if it can be completed immediately.
|
|
template<typename V , typename W > |
int | try_write (std::unique_ptr< char[]> data, unsigned int len, stream_handle< V, W > &send) |
| Queues a write request if it can be completed immediately.
|
|
int | try_write (char *data, unsigned int len) |
| Queues a write request if it can be completed immediately.
|
|
template<typename V , typename W > |
int | try_write (char *data, unsigned int len, stream_handle< V, W > &send) |
| Queues a write request if it can be completed immediately.
|
|
bool | readable () const noexcept |
| Checks if the stream is readable.
|
|
bool | writable () const noexcept |
| Checks if the stream is writable.
|
|
bool | blocking (bool enable=false) |
| Enables or disables blocking mode for a stream.
|
|
size_t | write_queue_size () const noexcept |
| Gets the amount of queued bytes waiting to be sent.
|
|
Public Member Functions inherited from uvw::handle< T, U, listen_event, end_event, connect_event, shutdown_event, data_event, write_event, E... > |
handle_category | category () const noexcept |
| Gets the category of the handle.
|
|
handle_type | 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 | send_buffer_size () |
| Gets the size of the send buffer used for the socket.
|
|
int | send_buffer_size (int value) |
| Sets the size of the send buffer used for the socket.
|
|
int | recv_buffer_size () |
| Gets the size of the receive buffer used for the socket.
|
|
int | recv_buffer_size (int value) |
| Sets the size of the receive buffer used for the socket.
|
|
os_file_descriptor | fd () const |
| Gets the platform dependent file descriptor equivalent.
|
|
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.
|
|
virtual int | init () |
| Initializes the handle.
|
|
loop & | parent () const noexcept |
| Gets the loop from which the resource was originated.
|
|
const U * | raw () const noexcept |
| Gets the underlying raw data structure.
|
|
U * | raw () noexcept |
| Gets the underlying raw data structure.
|
|
void | on (listener_t< U > f) |
| Registers a long-lived listener with the event emitter.
|
|
void | reset () noexcept |
| Disconnects the listener for the given event type.
|
|
void | reset () noexcept |
| Disconnects all listeners.
|
|
bool | has () const noexcept |
| Checks if there is a listener registered for the specific event.
|
|
template<typename T, typename U, typename... E>
class uvw::stream_handle< T, U, E >
The stream handle.
Stream handles provide an abstraction of a duplex communication channel. The stream handle is an intermediate type, uvw
provides three stream implementations: tcp, pipe and tty handles.
Definition at line 108 of file stream.h.
template<typename T , typename U , typename... E>
template<typename S , typename Deleter >
int uvw::stream_handle< T, U, E >::write |
( |
S & |
send, |
|
|
std::unique_ptr< char[], Deleter > |
data, |
|
|
unsigned int |
len |
|
) |
| |
|
inline |
Extended write function for sending handles over a pipe handle.
The pipe must be initialized with ipc == true
.
send
must be a tcp or pipe handle, which is a server or a connection (listening or connected state). Bound sockets or pipes will be assumed to be servers.
The handle takes the ownership of the data and it is in charge of delete them.
A write event will be emitted when the data have been written.
- Parameters
-
send | The handle over which to write data. |
data | The data to be written to the stream. |
len | The lenght of the submitted data. |
- Returns
- Underlying return value.
Definition at line 314 of file stream.h.