0
即阻塞版本将返回-1错误。Boost ASIO如何receive_from返回底层套接字错误?
更重要的是,您怎么知道通话失败?不
的boost ::支持ASIO ::知识产权:: UDP ::插座:: receive_from()返回-1错误
正常BSD套接字API调用receive_from将返回-1错误,你可以看看errno的具体错误代码。升压版本是否也一样?
好吧,我试图通过超负荷这样的:
while(true){
boost::system::error_code ec;
size_t length = socket_.receive_from(
boost::asio::buffer(buffer, buffer_size),
sender_endpoint, ec);
/// ... other code
}
但我得到的编译此错误:
error: no matching function for call to ‘boost::asio::basic_datagram_socket<boost::asio::ipdp, boost::asio::datagram_socket_service<boost::asio::ip::udp> >::receive_from(boost::asio::mutable_buffer, boost::asio::ip::basic_endpoint<boost::asio::ip::udp>&, boost::system::error_code&)’
make: *** [server.o] Error 1
是文档错误还是我做错了什么? 编辑:不,我错了...对不起,我有一个时刻...它被称为过度劳累!我现在半睡着了。我缺少标志参数。