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

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
PrevUpHomeNext

strand::require

Forward a requirement to the underlying executor.

template<
    typename Property>
constraint< can_require< const Executor &, Property >::value &&!is_convertible< Property, execution::blocking_t::always_t >::value, strand< typename decay< typename require_result< const Executor &, Property >::type >::type > >::type require(
    const Property & p) const;

Do not call this function directly. It is intended for use with the require customisation point.

For example:

boost::asio::strand<my_executor_type> ex1 = ...;
auto ex2 = boost::asio::require(ex1,
    boost::asio::execution::blocking.never);

PrevUpHomeNext