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

Method do_execute

include/boost/asio/impl/system_executor.hpp:47–67  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

45template <typename Blocking, typename Relationship, typename Allocator>
46template <typename Function>
47inline void
48basic_system_executor<Blocking, Relationship, Allocator>::do_execute(
49 Function&& f, execution::blocking_t::possibly_t) const
50{
51 // Obtain a non-const instance of the function.
52 detail::non_const_lvalue<Function> f2(f);
53
54#if !defined(BOOST_ASIO_NO_EXCEPTIONS)
55 try
56 {
57#endif// !defined(BOOST_ASIO_NO_EXCEPTIONS)
58 detail::fenced_block b(detail::fenced_block::full);
59 static_cast<decay_t<Function>&&>(f2.value)();
60#if !defined(BOOST_ASIO_NO_EXCEPTIONS)
61 }
62 catch (...)
63 {
64 std::terminate();
65 }
66#endif// !defined(BOOST_ASIO_NO_EXCEPTIONS)
67}
68
69template <typename Blocking, typename Relationship, typename Allocator>
70template <typename Function>

Callers 1

executeMethod · 0.95

Calls 2

allocateFunction · 0.50

Tested by

no test coverage detected