我有一些使用boost :: shared_array的代码,这可以确保数组在异步功能期间保持“活动”状态。
我注意到boost :: shared_array现在已被弃用,这种代码的最佳实践是什么?
void UdpServer::udpSendTo(const std::string &ip, unsigned short port, boost::shared_array<char> buffer, size_t bufferSize)
{
udp::resolver resolver(io_context_);
std::stringstream ss; ss << port;
udp::resolver::results_type endpoints = resolver.resolve(udp::v4(), ip, ss.str());
socket_.async_send_to(boost::asio::buffer(buffer.get(), bufferSize), *endpoints.begin(), [](boost::system::error_code ec, std::size_t bytes_sent) {
//send complete
});
}