La documentación disponible en el sitio web de impulso es ... limitada.
Por lo que he podido leer, el consenso general es que es simplemente difícil encontrar buena documentación sobre la biblioteca boost :: asio.
¿Es este realmente el caso? Si es así, ¿por qué?
Notas:
- Ya he encontrado el sitio web de Asio (sin impulso) , y la documentación parece ser idéntica a la del sitio web de impulso.
- ¡Sé que Boost :: asio es nuevo! Estoy buscando soluciones, no excusas.
Editar:
- Existe una propuesta para agregar una biblioteca de red a la biblioteca estándar para TR2 escrita por el autor de Boost: asio (Christopher Kohlhoff). Si bien no es documentación para boost: asio, sí lo usa como base para la propuesta TR2. Dado que el autor hizo un mayor esfuerzo en este documento, he encontrado que es algo útil, si no como una referencia, al menos como una descripción general.
fuente
Se puede encontrar buena documentación sobre boost, incluido un capítulo sobre asio, en un libro de impulso (gratuito) en http://en.highscore.de/cpp/boost/index.html . El capítulo sobre asio proporciona una descripción general y luego va tan lejos como cómo desarrollar sus propias extensiones de asio personalizadas. ¡Realmente fantástico esfuerzo de Boris Schäling!
fuente
Escribí dos pequeños artículos que podrían usarse como introducciones para boost.asio. Están disponibles desde mi sitio
fuente
NOTA: Me he puesto en contacto con gamedev.net para informarles sobre los problemas de formato. Lamentablemente, al momento de escribir este comentario, este recurso es más difícil de recomendar debido a algunos cambios en su sitio web que ocultan / eliminan las declaraciones #include + un recurso de archivo .zip faltante.
Aquí se puede encontrar un tutorial para principiantes relativamente nuevo y muy bueno para Boost.Asio (que también presenta cómo usarlo de manera efectiva con bind, shared_ptr y threads):
http://www.gamedev.net/blog/950/entry-2249317-a-guide-to-getting-started-with-boostasio?pg=1
Nota: Si usa características de c ++ 0x, muchos de los usos simples de bind para crear un functor pueden reemplazarse con lambdas, y shared_ptr / bind también están disponibles en la última versión de Visual Studio (o gcc que también incluye hilos .)
Cuando buscaba documentación o un tutorial, esta pregunta seguía apareciendo en la parte superior de los resultados de búsqueda, por lo que es importante mantenerla actualizada a medida que aparecen nuevos tutoriales.
fuente
bind
funciona a dejar que el lector adivine quéHive
hay en su biblioteca.Llegué a 3 videos que he encontrado útiles una vez que pasas la descripción general oficial de boost asio:
Y
fuente
La documentación de asio, la disponible en boost, es minimalista pero muy precisa, cada palabra es significativa. Dicho esto, he aprendido asio (y sigo aprendiendo) principalmente de SO.
En mi opinión, la respuesta a ' Confundido cuando boost :: asio :: io_service ejecutar método bloquea / desbloquea ' es el primer paso, lea una lectura nuevamente hasta que realmente lo entienda, segunda respuesta también es útil.
Luego, me he suscrito a RSS a la nueva pregunta de etiqueta SO boost-asio ya estas dos respuestas:
Tanner Sansburry , el autor de la respuesta anterior, sus respuestas son siempre muy precisas, completas, con referencias, incluso esquemas hermosos . Fuente RSS
Sehe (lo siento Sehe, solo 2do). RSS Feed
¡Con todo ese material, pronto serás un experto en asio!
fuente
También tenía mucha curiosidad por eso, pero esta página me dio algo de ventaja. Está en francés, pero podría usar el traductor de Google, que es bastante legible (tuve que seguir este camino yo mismo).
http://gwenael-dunand.developpez.com/tutoriels/cpp/boost/asio/
fuente
Me topé con el siguiente pdf: http://boost.cowic.de/rc/pdf/asio_doc.pdf
fuente
Un poco tarde para la fiesta, pero hay un libro llamado "Boost Asio Network Programming" (publicación de Packt).
Compré una copia de esto, lo leí durante el fin de semana y luego escribí un servidor completo en C ++ sin mucho problema.
Descargo de responsabilidad: no tengo nada que ver con el libro
fuente