1
以下のコードでは、Windows WinSockのエラーWSAEINTR = 10004を汎用のブーストシステムエラーコードに置き換えたいのですが、デバッガで見つかったコードを汎用の列挙型にマップするにはどうすればよいですか?Windowsシステムのエラーコードをboost :: error_conditionにマップするにはどうすればよいですか?
timeout_.expires_from_now(posix_time::seconds(15));
timeout_.async_wait(boost::bind(&cancel_socket_fn,this,_1));
asio::streambuf rd_buf;
unsigned length = read_until(socket_, rd_buf,delimiter_string, error);
timeout_.cancel();
if(error)
{
// how do I make this portable?
if(error.value()==WSAEINTR) throw request_timeout_exception()
else throw my_asio_exception(error,"Unable to read header");
}
...
cancel_socket_fn(system::error_code e) { socket_.cancel(); }