我正在用boost :: asio编写一个udp广播服务器。 Udp数据包将从一个源端接收并广播到多个目的地。在单个线程中做这样的事情是否安全?
boost::asio::ip::udp::socket s;
MyHandler handler; // do nothing handler
MyBuffer buffer; // buffer is allocated on heap and managed by smart ptr
...
s.async_send_to(buffer, destination1, handler);
s.async_send_to(buffer, destination2, handler);
s.async_send_to(buffer, destination3, handler);
或者我应该使用阻止send_to吗?或者我应该链接它们,即在第一个async_send_to的完成处理程序中调用第二个async_send_to?