#### io_context::strand::defer

Request the strand to invoke the given function object.

    template<
        typename Function,
        typename Allocator>
    void defer(
        Function && f,
        const Allocator & a) const;

This function is used to ask the executor to execute the given function object. The function object will never be executed inside this function. Instead, it will be scheduled to run by the underlying `io_context`.

###### Parameters

f

  The function object to be called. The executor will make a copy of the handler object as required. The function signature of the function object must be:

      void function();

a

  An allocator that may be used by the executor to allocate the internal storage needed for function invocation.