C ++ Boost.asio Ping

Estoy intentando crear un programa que enumere todas las direcciones IP de los dispositivos en una red. Uno de los componentes principales de esto es poder hacer ping a dispositivos. Este programa debe funcionar en Linux, Windows y Mac, así que elegí la biblioteca Boost.

Logré encontrar este ejemplo en la documentación:http://www.boost.org/doc/libs/1_47_0/doc/html/boost_asio/example/icmp/ping.cpp

Tengo bastante experiencia en C ++ cuando uso OpenGL 3.1 y Shaders, pero cuando ejecuto este programa, suena una y otra vez (454+) y entenderlo me está lanzando para un bucle (no hay juego de palabras), parece contener una cantidad sustancial taquigrafía, funciones que nunca he visto, etc.

¿Existe un método más simple para hacer ping a una máquina con Boost: asio? o ¿Hay alguna manera de que este método se ejecute solo 4 veces y devuelva el tiempo de respuesta promedio?

Respuestas a la pregunta(1)

Su respuesta a la pregunta