Вопрос

Документация, доступная на раскрутите веб-сайт есть...ограниченный.

Из того, что я смог прочитать, общий консенсус заключается в том, что просто трудно найти хорошую документацию по библиотеке boost::asio.

Так ли это на самом деле?Если да, то почему?

Примечания:

  • Я уже нашел (без повышения) Веб - сайт Asio - и документация выглядит идентичной документации на веб-сайте boost.
  • Я знаю, что Boost:: asio - это новинка!Я ищу решения, а не оправдания.

Редактировать:

Это было полезно?

Решение

Во-первых, я использую Boost.Asio уже довольно давно - и я разделяю ваше беспокойство.Чтобы ответить на ваш вопрос:

  • Документации о Boost действительно очень мало.Asio помимо введения и руководства.Я не автор, но это в основном потому, что слишком много вещей нужно документировать для чего-то столь низкоуровневого, как библиотека асинхронного ввода-вывода.
  • Примеры дают больше информации, чем учебные пособия.Если вы не возражаете потратить немного времени на изучение различных примеров, я бы подумал, что их должно быть достаточно, чтобы вы начали.Если вы хотите покончить с этим, то справочная документация должна вам очень помочь.
  • Поспрашивайте в списке рассылки Boost Users и Boost Developers, если вы действительно застряли или ищете конкретные рекомендации.Я почти уверен, что многие люди будут готовы ответить на ваши вопросы в списках рассылки.

Предпринимаются усилия (не являющиеся частью Boost.Asio) по раскрытию большей части функциональности и возможных альтернативных вариантов использования.Это в лучшем случае разбросано по Интернету в блогах и других формах неупакованной документации.

Одна вещь, которая неясна и которая действительно потребует тесной координации с автором и разработчиками Boost.Библиотека Asio будет включать в себя расширение и настройку для конкретной платформы или добавление определенной новой функциональности.Хотя это должно быть улучшено, но хорошо то, что, похоже, в будущем Asio станет эталонной реализацией для технического отчета стандартной библиотеки (для библиотеки асинхронного ввода-вывода в STL).

Другие советы

Некоторую полезную документацию по boost, включая главу об asio, можно найти в (бесплатной) книге boost по адресу http://en.highscore.de/cpp/boost/index.html.В главе, посвященной asio, дается общий обзор, а затем рассказывается о том, как разработать свои собственные расширения asio.Действительно фантастическая работа Бориса Шелинга!

Я написал две небольшие статьи, которые можно было бы использовать в качестве введения к boost.asio.Они доступны по адресу мой сайт

ПРИМЕЧАНИЕ:Я связался с gamedev.net, чтобы сообщить им о проблемах с форматированием.К сожалению, на момент написания этого комментария рекомендовать этот ресурс сложнее из-за некоторых изменений на их веб-сайте, которые скрывают / удаляют инструкции #include + отсутствующий ресурс .zip-файл.

Относительно новое и очень хорошее руководство для начинающих по Boost.Asio (в котором также рассказывается о том, как эффективно использовать его с bind, shared_ptr и threads) можно найти здесь:

http://www.gamedev.net/blog/950/entry-2249317-a-guide-to-getting-started-with-boostasio?pg=1

Примечание:Если вы используете функции c ++ 0x, многие из простых способов использования bind для создания функтора могут быть заменены лямбдами, а shared_ptr / bind также доступны в последней версии visual studio (или gcc, которая также включает потоки).

Когда я искал документацию или учебное пособие, этот вопрос постоянно всплывал в верхней части результатов поиска, поэтому важно постоянно обновлять его по мере появления новых учебных пособий.

Мне это тоже было довольно любопытно, но эта страница дала мне некоторую фору.Это на французском, но вы могли бы воспользоваться Google translate, который довольно удобочитаем (мне пришлось самому пройти по этому пути).

http://gwenael-dunand.developpez.com/tutoriels/cpp/boost/asio/

Документация asio, доступная в boost, минималистична, но очень точна, каждое слово имеет значение.Тем не менее, я изучил asio (и продолжаю учиться) в основном у SO.

На мой взгляд, ответ чтобы 'Сбит с толку, когда блокирует / разблокирует метод запуска boost::asio::io_service"это самый первый шаг, читайте снова и снова, пока вы действительно не поймете это, второй ответ это тоже полезно.

Затем я подписался на RSS-канал новейший вопрос по тегу SO boost-asio и этим двум авторам ответов:

Таннер Сансберри, автор приведенного выше ответа, его ответы всегда очень точные, исчерпывающие, со ссылками, даже красивая схемаs. RSS-канал
Sehe (извините, Сехе, только 2-й). RSS-канал

Со всем этим материалом вы скоро станете экспертом по asio !

Немного опоздал на вечеринку, но вышла книга под названием "Сетевое программирование Boost Asio" (издательство Packt publishing).

Я купил копию этого, прочитал ее за выходные, а затем без особых проблем написал полноценный on server на C ++.

Отказ от ответственности:Я не имею никакого отношения к книге

Я наткнулся на следующий PDF-файл:http://boost.cowic.de/rc/pdf/asio_doc.pdf

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top