#### strand::dispatch

Request the strand to invoke the given function object.

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

This function is used to ask the strand to execute the given function object on its underlying executor. The function object will be executed inside this function if the strand is not otherwise busy and if the underlying executor's `dispatch()` function is also able to execute the function before returning.

###### 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.