|
libtasks Documentation
1.6
|
The net_io_task implements the base for socket based network tasks. More...
#include <net_io_task.h>


Public Member Functions | |
| net_io_task (int events) | |
| net_io_task (net::socket &socket, int events) | |
| virtual | ~net_io_task () |
| std::string | get_string () const |
| A debug helper. More... | |
| net::socket & | socket () |
| Provide access to the underlying socket object. More... | |
| const net::socket & | socket () const |
| Provide const access to the underlying socket object. More... | |
Public Member Functions inherited from tasks::io_task_base | |
| io_task_base (int events) | |
| virtual | ~io_task_base () |
| std::string | get_string () const |
| int | events () const |
| Return the monitored events. More... | |
| ev_io * | watcher () const |
| Return the io watcher object. More... | |
| virtual void | init_watcher () |
| Initialize the watcher. More... | |
| virtual void | start_watcher (worker *worker) |
| Start a watcher in the context of the given worker. More... | |
| virtual void | stop_watcher (worker *worker) |
| Stop a watcher in the context of the given worker. More... | |
| virtual void | update_watcher (worker *worker) |
| Udate a watcher in the context of the given worker. More... | |
| virtual void | dispose (worker *worker) |
| Stop the watcher before being deleted. More... | |
Public Member Functions inherited from tasks::event_task | |
| virtual | ~event_task () |
| virtual bool | handle_event (worker *worker, int events)=0 |
| worker * | assigned_worker () const |
| Returns a pointer to the assigned worker. More... | |
| void | assign_worker (worker *worker) |
| void | notify_error (worker *worker=nullptr) |
| void | on_error (error_func_worker_t f) |
| void | on_error (error_func_void_t f) |
| Install an error callback. More... | |
Public Member Functions inherited from tasks::task | |
| virtual | ~task () |
| bool | auto_delete () const |
| Returns true if auto deletion is active. More... | |
| void | disable_auto_delete () |
| Call this to deactivate auto deletion. More... | |
| void | finish (worker *worker=nullptr) |
| Called by a worker when a task has auto_deletion enabled. More... | |
| void | on_finish (finish_func_worker_t f) |
| void | on_finish (finish_func_void_t f) |
Public Member Functions inherited from tasks::error_base | |
| error_base () | |
| virtual | ~error_base () |
| bool | error () const |
| Return true if an error occured. More... | |
| tasks_error | error_code () const |
| Return the error code. More... | |
| const std::string & | error_message () const |
| Return the error message. More... | |
| int | sys_errno () const |
| Return the errno if available. More... | |
| std::string | sys_errno_str () const |
| Return the errno description if available. More... | |
| const tasks_exception & | exception () const |
| Return the underlying exception object. More... | |
| void | set_exception (tasks_exception &e) |
| Set an exception to report an error. More... | |
| void | reset_error () |
| Reset the error state. More... | |
Public Member Functions inherited from tasks::disposable | |
| disposable () | |
| virtual | ~disposable () |
| bool | can_dispose () const |
| Check if a task can be disposed or not. More... | |
| void | disable_dispose () |
| Mark a task for being not disposable. More... | |
| void | enable_dispose () |
| Mark a task for being disposable. More... | |
Static Public Member Functions | |
| static void | add_task (net_io_task *task) |
Protected Member Functions | |
| void | add_task (worker *worker, net_io_task *task) |
| io_base & | iob () |
| Grant socket access to the io_task_base. More... | |
| const io_base & | iob () const |
| Grant const socket access to the io_task_base. More... | |
| void | disable_auto_close () |
| Disable automatic closing of the socket in the desctructor. More... | |
Protected Member Functions inherited from tasks::io_task_base | |
| void | set_events (int events) |
| Update the events the object monitors. More... | |
Private Attributes | |
| net::socket | m_socket |
| bool | m_auto_close = true |
Additional Inherited Members | |
Public Types inherited from tasks::event_task | |
| typedef std::function< void(worker *worker, const tasks_exception &e)> | error_func_worker_t |
| typedef std::function< void(const tasks_exception &e)> | error_func_void_t |
Public Types inherited from tasks::task | |
| typedef std::function< void(worker *worker)> | finish_func_worker_t |
| typedef std::function< void()> | finish_func_void_t |
The net_io_task implements the base for socket based network tasks.
Definition at line 21 of file net_io_task.h.
|
inline |
Definition at line 23 of file net_io_task.h.
| tasks::net_io_task::net_io_task | ( | net::socket & | socket, |
| int | events | ||
| ) |
|
virtual |
|
static |
This public method can be used to add io tasks outside of a worker thread context. If io tasks should be created within the context of a worker thread, you should use the protected non static method and pass a worker thread pointer.
Definition at line 40 of file net_io_task.cpp.


|
protected |
|
inlineprotected |
Disable automatic closing of the socket in the desctructor.
Definition at line 61 of file net_io_task.h.
|
inline |
A debug helper.
Definition at line 28 of file net_io_task.h.


|
inlineprotectedvirtual |
Grant socket access to the io_task_base.
Implements tasks::io_task_base.
Definition at line 53 of file net_io_task.h.

|
inlineprotectedvirtual |
Grant const socket access to the io_task_base.
Implements tasks::io_task_base.
Definition at line 57 of file net_io_task.h.
|
inline |
Provide access to the underlying socket object.
Definition at line 35 of file net_io_task.h.

|
inline |
Provide const access to the underlying socket object.
Definition at line 39 of file net_io_task.h.
|
private |
Definition at line 67 of file net_io_task.h.
|
private |
Definition at line 66 of file net_io_task.h.