MCPcopy Create free account
hub / github.com/boostorg/asio / test_deferred

Function test_deferred

example/cpp20/operations/composed_7.cpp:195–224  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

193//------------------------------------------------------------------------------
194
195void test_deferred()
196{
197 boost::asio::io_context io_context;
198
199 tcp::acceptor acceptor(io_context, {tcp::v4(), 55555});
200 tcp::socket socket = acceptor.accept();
201
202 // Test our asynchronous operation using the deferred completion token. This
203 // token causes the operation's initiating function to package up the
204 // operation with its arguments to return a function object, which may then be
205 // used to launch the asynchronous operation.
206 boost::asio::async_operation auto op = async_write_messages(
207 socket, "Testing deferred\r\n", 5, boost::asio::deferred);
208
209 // Launch the operation using a lambda as a callback.
210 std::move(op)(
211 [](const boost::system::error_code& error)
212 {
213 if (!error)
214 {
215 std::cout << "Messages sent\n";
216 }
217 else
218 {
219 std::cout << "Error: " << error.message() << "\n";
220 }
221 });
222
223 io_context.run();
224}
225
226//------------------------------------------------------------------------------
227

Callers 1

mainFunction · 0.70

Calls 3

async_write_messagesFunction · 0.70
acceptMethod · 0.45
runMethod · 0.45

Tested by

no test coverage detected