Hello,

    I created a server single thread async (linux) and clinet (win).
Every time client is close while server is writing to the socket connected to this client exception appears:

terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::system::system_error>>'
  what():  Transport endpoint is not connected
Aborted

 and server is terminated.
I dont know why this exception is unhandled.

int main( int argc, char** argv )
{   
    try
    {     
        boost::asio::io_service io_service;

        quotation_server server( io_service );
        
while ( true )
{
   try
            {
         io_service.run();
            }
            catch( ... ){}
        }
    }
    catch ( std::exception& e )
    {
        LOG << e.what() << std::endl;
    }
    catch( ... )
    { 
        LOG << "Unexpected exception" << std::endl;
    }
    
    return 0;
}