예제 #1
0
파일: asio.hpp 프로젝트: FollowMyVote/fc
 void accept( AcceptorType& acc, SocketType& sock ) {
     //promise<boost::system::error_code>::ptr p( new promise<boost::system::error_code>("fc::asio::tcp::accept") );
     promise<void>::ptr p( new promise<void>("fc::asio::tcp::accept") );
     acc.async_accept( sock, boost::bind( fc::asio::detail::error_handler, p, _1 ) );
     p->wait();
     //if( ec ) BOOST_THROW_EXCEPTION( boost::system::system_error(ec) );
 }
예제 #2
0
파일: asio.hpp 프로젝트: BrownBear2/fc
 void accept( AcceptorType& acc, SocketType& sock ) {
     promise<boost::system::error_code>::ptr p( new promise<boost::system::error_code>("fc::asio::tcp::accept") );
     acc.async_accept( sock, boost::bind( fc::asio::detail::error_handler, p, _1 ) );
     auto ec = p->wait();
     if( !ec ) sock.non_blocking(true);
     if( ec ) BOOST_THROW_EXCEPTION( boost::system::system_error(ec) );
 }