restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket > Class Referencefinal

A specialization for plain tcp-socket using linux sendfile() (http://man7.org/linux/man-pages/man2/sendfile.2.html). More...

Inheritance diagram for restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >:

## Public Types

using | base_type_t = sendfile_operation_runner_base_t< asio_ns::ip::tcp::socket >

## Public Member Functions

| sendfile_operation_runner_t (const sendfile_operation_runner_t &)=delete
| sendfile_operation_runner_t (sendfile_operation_runner_t &&)=delete
sendfile_operation_runner_t & | operator= (const sendfile_operation_runner_t &)=delete
sendfile_operation_runner_t & | operator= (sendfile_operation_runner_t &&)=delete
virtual void | start () override
void | init_next_write () noexcept
Public Member Functions inherited from restinio::impl::sendfile_operation_runner_base_t< asio_ns::ip::tcp::socket >
| sendfile_operation_runner_base_t ()=delete
| sendfile_operation_runner_base_t (const sendfile_t &sf, default_asio_executor executor, asio_ns::ip::tcp::socket &socket, after_sendfile_cb_t after_sendfile_cb)
auto | expires_after () const noexcept
Public Member Functions inherited from restinio::impl::sendfile_operation_base_t
virtual | ~sendfile_operation_base_t ()=default
virtual void | start ()=0

## Private Member Functions

RESTINIO_NODISCARD bool | try_turn_non_blocking_mode () noexcept
RESTINIO_NODISCARD auto | call_native_sendfile () noexcept
RESTINIO_NODISCARD bool | try_initiate_waiting_for_write_readiness () noexcept

## Additional Inherited Members

Protected Attributes inherited from restinio::impl::sendfile_operation_runner_base_t< asio_ns::ip::tcp::socket >
file_descriptor_t | m_file_descriptor
file_offset_t | m_next_write_offset
file_size_t | m_remained_size
file_size_t | m_transfered_size
const file_size_t | m_chunk_size
const std::chrono::steady_clock::time_point | m_expires_after
default_asio_executor | m_executor
asio_ns::ip::tcp::socket & | m_socket
after_sendfile_cb_t | m_after_sendfile_cb

## Detailed Description

A specialization for plain tcp-socket using linux sendfile() (http://man7.org/linux/man-pages/man2/sendfile.2.html).

Definition at line 168 of file sendfile_operation_posix.ipp.

## Member Typedef Documentation

## base_type_t

using restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >::base_type_t = sendfile_operation_runner_base_t< asio_ns::ip::tcp::socket >

Definition at line 324 of file sendfile_operation_posix.ipp.

## Constructor & Destructor Documentation

## sendfile_operation_runner_t() [1/2]

restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >::sendfile_operation_runner_t | ( | const sendfile_operation_runner_t< asio_ns::ip::tcp::socket > & |  | ) |

delete

## sendfile_operation_runner_t() [2/2]

restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >::sendfile_operation_runner_t | ( | sendfile_operation_runner_t< asio_ns::ip::tcp::socket > && |  | ) |

delete

## Member Function Documentation

## call_native_sendfile()

RESTINIO_NODISCARD auto restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >::call_native_sendfile | ( |  | ) |

inlineprivatenoexcept

Definition at line 275 of file sendfile_operation_posix.ipp.

## init_next_write()

void restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >::init_next_write | ( |  | ) |

inlinenoexcept

Note
  This method is noexcept since v.0.6.0.

Definition at line 345 of file sendfile_operation_posix.ipp.

## operator=() [1/2]

sendfile_operation_runner_t & restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >::operator= | ( | const sendfile_operation_runner_t< asio_ns::ip::tcp::socket > & |  | ) |

delete

## operator=() [2/2]

sendfile_operation_runner_t & restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >::operator= | ( | sendfile_operation_runner_t< asio_ns::ip::tcp::socket > && |  | ) |

delete

## start()

virtual void restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >::start | ( |  | ) |

inlineoverridevirtual

Implements restinio::impl::sendfile_operation_base_t.

Definition at line 335 of file sendfile_operation_posix.ipp.

## try_initiate_waiting_for_write_readiness()

RESTINIO_NODISCARD bool restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >::try_initiate_waiting_for_write_readiness | ( |  | ) |

inlineprivatenoexcept

Definition at line 287 of file sendfile_operation_posix.ipp.

## try_turn_non_blocking_mode()

RESTINIO_NODISCARD bool restinio::impl::sendfile_operation_runner_t< asio_ns::ip::tcp::socket >::try_turn_non_blocking_mode | ( |  | ) |

inlineprivatenoexcept

Definition at line 175 of file sendfile_operation_posix.ipp.

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

- restinio/impl/sendfile_operation_posix.ipp