146

ブースト Web サイトで入手できるドキュメントは... 限られています。

私が読んだ限りでは、一般的なコンセンサスは、boost::asio ライブラリに関する優れたドキュメントを見つけるのは難しいということです。

これは本当にそうですか?もしそうなら、なぜですか?

ノート:

  • 私はすでに(ブーストではない)Asio Web サイトを見つけました- ドキュメントはブースト Web サイトのものと同じように見えます。
  • Boost::asio が新しいことは知っています。言い訳ではなく解決策を探しています。

編集:

  • Boost:asio の作者 (Christopher Kohlhoff) によって、TR2 の標準ライブラリにネットワーク ライブラリを追加する提案があります。boost:asio のドキュメントではありませんが、TR2 提案のベースとして使用しています。著者はこの文書により多くの努力を払ったので、リファレンスとしてではなくても、少なくとも概要としては多少役立つことがわかりました。
4

9 に答える 9

67

asio に関する章を含むブーストに関するいくつかの優れたドキュメントは、 http://en.highscore.de/cpp/boost/index.htmlの (無料の) ブースト ブックにあります。asio の章では、一般的な概要を説明し、独自のカスタム asio 拡張機能を開発する方法について説明します。ボリス・シェーリングの本当に素晴らしい努力!

于 2010-07-12T09:57:44.750 に答える
58

まず、私はすでにかなり長い間 Boost.Asio を使用しており、あなたの懸念を共有しています。あなたの質問に対処するには:

  • 紹介とチュートリアルを除いて、Boost.Asio に関するドキュメントは非常に少ないです。私は作成者ではありませんが、これは主に、非同期 IO ライブラリのような低レベルのものについて文書化するものが多すぎるためです。
  • 例は、チュートリアルよりも多くの情報を提供します。さまざまな例を見るのに少し時間を費やすことを気にしないのであれば、それらはあなたが始めるのに十分であると思います. それを回避したい場合は、リファレンス ドキュメントが大いに役立つはずです。
  • 本当に困っている場合や特定のガイダンスを探している場合は、Boost Users および Boost Developers メーリング リストで質問してください。多くの人がメーリングリストであなたの懸念に喜んで対処してくれると確信しています。

多くの機能と可能な代替ユースケースを公開する取り組みがあります (Boost.Asio の一部ではありません)。これはせいぜい、ブログやパッケージ化されていないドキュメントの他の形式で Web に散らばっているだけです。

Boost.Asio ライブラリの作成者および開発者との緊密な調整が必要な不明確な点の 1 つは、特定のプラットフォーム向けに拡張およびカスタマイズするか、特定の新しい機能を追加することです。これは改善する必要がありますが、良いことは、Asio が将来的に標準ライブラリ テクニカル レポート (STL の非同期 IO ライブラリ) のリファレンス実装になるように見えることです。

于 2008-10-28T19:45:07.263 に答える
42

boost.asio の紹介として使用できる 2 つの小さな記事を書きました。それらは私のサイトから入手できます

于 2009-02-05T09:48:08.690 に答える
30

注: gamedev.net に連絡して、フォーマットの問題について知らせました。残念ながら、このコメントを書いている時点では、#include ステートメントを非表示/削除する Web サイトの変更と .zip ファイル リソースの欠落があるため、このリソースを推奨するのはより困難です。

Boost.Asio の比較的新しく非常に優れた初心者用チュートリアル (bind、shared_ptr、およびスレッドで効果的に使用する方法も紹介されています) は、次の場所にあります。

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) の最新バージョンでも利用できます。 .)

ドキュメントやチュートリアルを検索していたときに、この質問が検索結果の一番上に表示され続けたので、新しいチュートリアルが登場するたびに更新し続けることが重要です。

于 2011-05-03T23:00:21.520 に答える
8

ブーストで利用可能な asio ドキュメントは最小限ですが、非常に正確で、各単語は重要です。そうは言っても、私は主にSOからasioを学びました(そして学び続けています)。

私の意見では、 「 boost::asio::io_service がメソッドをブロック/ブロック解除するときに混乱する」に対する答えは最初のステップです。本当に理解できるまでもう一度読んでください。2 番目の答えも役に立ちます。

次に、RSS を最新の SO boost-asio タグの質問と、次の 2 つの回答者にサブスクライブしました。

上記の回答の著者であるTanner Sansburryは、彼の回答は常に非常に正確で包括的であり、参考文献や美しいスキーマも含まれています。RSS フィード
Sehe (Sehe さん、2 番目のみ)。RSS フィード

これらすべての資料があれば、あなたはすぐに asio のエキスパートになります。

于 2014-11-05T09:16:18.327 に答える
7

私もそれについてかなり興味がありましたが、このページは私にいくらかの有利なスタートを与えました。フランス語ですが、かなり読みやすいグーグル翻訳を使用することができます(私はこの道を自分でたどらなければなりませんでした)。

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

于 2009-11-06T19:38:15.063 に答える
0

次のpdfに出くわしました: http://boost.cowic.de/rc/pdf/asio_doc.pdf

于 2010-07-14T12:54:10.683 に答える
0

パーティーに少し遅れましたが、「Boost Asio Network Programming」(Packt 出版) という本が出ています。

私はこれのコピーを購入し、週末にそれを読み、それから C++ で完全にサーバー上で問題なく書きました。

免責事項:私は本とは何の関係もありません

于 2016-02-05T21:37:55.410 に答える