Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

basic_stream_socket::async_send (2 of 2 overloads)

Boost , Boost.Asio , basic_stream_socket::async_send

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Начните асинхронную отправку.

template<
    typename ConstBufferSequence,
    typename WriteHandler>
void-or-deduced async_send(
    const ConstBufferSequence & buffers,
    socket_base::message_flags flags,
    WriteHandler handler);

Эта функция используется для асинхронной отправки данных на розетку потока. Звонок функции всегда возвращается немедленно.

Parameters

buffers

Один или несколько буферов данных для отправки в розетку. Хотя объект буферов может быть скопирован по мере необходимости, право собственности на базовые блоки памяти сохраняется абонентом, который должен гарантировать, что они остаются действительными до тех пор, пока обработчик не будет вызван.

flags

Флаги, указывающие, как должен быть сделан звонок.

handler

Обработчик должен быть вызван, когда операция отправки завершится. Копии будут сделаны из обработчика по мере необходимости. Функциональная подпись обработчика должна быть:

void handler(
  const boost::system::error_code& error, // Result of operation.
  std::size_t bytes_transferred           // Number of bytes sent.
);

Независимо от того, выполняется ли асинхронная операция немедленно или нет, обработчик не будет вызываться из этой функции. Вызов обработчика будет выполнен способом, эквивалентным использованию boost::asio::io_service::post().

Remarks

Операция отправки может не передавать все данные одноранговому устройству. Рассмотрите возможность использования функции async_write, если вам необходимо убедиться, что все данные записаны до завершения асинхронной операции.

Example

Для отправки одного буфера данных используйте функцию buffer следующим образом:

socket.async_send(boost::asio::buffer(data, size), 0, handler);

См. документацию buffer для информации об отправке нескольких буферов за один ход, а также о том, как использовать ее с массивами, нарастить::array или std::vector.


PrevUpHomeNext

Статья basic_stream_socket::async_send (2 of 2 overloads) раздела Boost.Asio basic_stream_socket::async_send может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: basic_stream_socket::async_send ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-07-04 20:44:20/0.0059430599212646/0