| Home | Libraries | People | FAQ | More

### Completion handler requirements

A completion handler must meet the requirements for a handler. A value `h` of a completion handler class should work correctly in the expression `h()`.

##### Examples

A free function as a completion handler:

    void completion_handler()
    {
      ...
    }

A completion handler function object:

    struct completion_handler
    {
      ...
      void operator()()
      {
        ...
      }
      ...
    };

A non-static class member function adapted to a completion handler using `bind()`:

    void my_class::completion_handler()
    {
      ...
    }
    ...
    my_io_service.post(boost::bind(&my_class::completion_handler, this));