Destructor notifies
the io_context
that the work is complete.
~work();
The destructor is used to inform the io_context
that some work has finished. Once the count of unfinished work reaches
zero, the io_context
object's run()
function is permitted to exit.