2008-10-28 33 views
125

Tài liệu có sẵn trên boost website là ... bị giới hạn.Tài liệu tốt nhất cho Boost: asio?

Từ những gì tôi đã có thể đọc, sự đồng thuận chung là nó chỉ đơn giản là khó khăn để tìm tài liệu tốt về tăng :: asio thư viện.

Đây có phải là trường hợp thực sự không? Nếu vậy, tại sao?

Ghi chú:

  • Tôi đã tìm thấy (không tăng) Asio website - và các tài liệu có vẻ là giống hệt với trên trang web tăng.
  • Tôi biết rằng Boost :: asio là mới! Tôi đang tìm giải pháp không bào chữa.

Edit:

  • Có một proposal to add a networking library to standard library for TR2 được viết bởi tác giả của Boost: ASIO (Christopher Kohlhoff). Trong khi nó không phải là tài liệu để tăng cường: asio, nó sử dụng nó làm cơ sở cho đề xuất TR2. Vì tác giả đã nỗ lực nhiều hơn vào tài liệu này, tôi thấy nó có phần hữu ích, nếu không phải là một tham chiếu, thì ít nhất là một tổng quan.

Trả lời

52

Trước tiên, tôi đã sử dụng Boost.Asio trong một thời gian rồi - và tôi chia sẻ mối quan tâm của bạn. Để giải quyết câu hỏi của bạn:

  • Có tài liệu rất khan hiếm về Boost.Asio ngoài phần giới thiệu và hướng dẫn. Tôi không phải là tác giả, nhưng điều này chủ yếu là bởi vì có quá nhiều thứ để ghi lại thứ gì đó ở mức thấp như một Thư viện IO không đồng bộ.
  • Các ví dụ cung cấp nhiều hơn các hướng dẫn. Nếu bạn không ngại dành một chút thời gian để xem xét các ví dụ khác nhau, tôi sẽ nghĩ rằng chúng sẽ đủ để bạn bắt đầu. Nếu bạn muốn chạy trốn với nó, thì tài liệu tham khảo sẽ giúp bạn rất nhiều.
  • Hỏi xung quanh danh sách gửi thư của Người dùng nâng cao và Nhà phát triển nếu bạn thực sự gặp khó khăn hoặc tìm kiếm hướng dẫn cụ thể. Tôi khá chắc chắn rất nhiều người sẽ sẵn sàng giải quyết những lo ngại của bạn về danh sách gửi thư.

Có những nỗ lực (không phải là một phần của Boost.Asio) để hiển thị rất nhiều chức năng và các trường hợp sử dụng thay thế có thể có. Điều này tốt nhất là nằm rải rác trên web trong blog và các hình thức khác của tài liệu không đóng gói.

Một điều chưa rõ ràng và sẽ thực sự cần phối hợp chặt chẽ với tác giả và nhà phát triển thư viện Boost.Asio sẽ mở rộng và tùy chỉnh nó cho một nền tảng cụ thể hoặc thêm chức năng mới cụ thể. Điều này nên được cải thiện mặc dù nhưng điều tốt là nó trông giống như Asio sẽ là một thực hiện tham khảo cho một báo cáo kỹ thuật thư viện chuẩn (cho một thư viện IO không đồng bộ trong STL) trong tương lai.

+1

Cảm ơn bạn đã xác nhận sự nghi ngờ. Thật không may, tôi đã cố gắng học hỏi từ các ví dụ, với thành công phong nha nhưng hạn chế. Thật không may, tôi không thể biện minh bằng cách sử dụng một thư viện có một tập hợp nhỏ các ví dụ như một tập hợp các hướng dẫn. Tôi có thể lưu ý lời khuyên của bạn để hỏi về ML, nhưng háo hức chờ đợi sự hỗ trợ tốt hơn! – mmocny

+0

Tôi chỉ cần đặt hai và hai với nhau. Một trong những bài hát hay nhất trên Google (và hầu hết các bài viết thông tin) tôi tìm thấy trong khi googling boost asio đã có trên blog của bạn :) – mmocny

+0

Vâng, nhưng tôi không muốn nói nó ra ngoài. ;) Chis Kholhoff (tác giả) cũng có một blog, trong đó ông nói rất nhiều về Asio và làm thế nào nó có thể được sử dụng trong những trường hợp không phổ biến. –

39

Tôi đã viết hai bài viết nhỏ có thể được sử dụng làm giới thiệu cho boost.asio. Chúng có sẵn từ my site

+4

Tôi tìm thấy trang web của Alex Ott một cách độc lập trong khi nghiên cứu xem có sử dụng asio hay ace cho dự án hiện tại của chúng tôi hay không. Trang web của anh trả lời nhiều câu hỏi của tôi. –

7

Tôi khá tò mò về điều đó, nhưng trang này đã cho tôi một số khởi đầu thuận lợi. Nó bằng tiếng Pháp, nhưng bạn có thể sử dụng google dịch mà là khá dễ đọc (tôi đã phải đi theo con đường này bản thân mình).

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

60

Một số tài liệu hướng dẫn tốt đẹp trên tăng trong đó có một chương về ASIO có thể được tìm thấy trong một (miễn phí) tăng cuốn sách tại http://en.highscore.de/cpp/boost/index.html. Chương về asio cung cấp một cái nhìn tổng quan chung và sau đó đi xa như thế nào để phát triển các phần mở rộng asio tùy chỉnh của riêng bạn. Nỗ lực thực sự tuyệt vời của Boris Schäling!

30

Một tương đối mới và rất tốt mới bắt đầu hướng dẫn cho Boost.Asio (mà cũng giới thiệu cách sử dụng nó một cách hiệu quả với ràng buộc, shared_ptr, và chủ đề) có thể được tìm thấy ở đây :

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

Lưu ý: Nếu bạn đang sử dụng C++ 0x tính năng nhiều trong những ứng dụng đơn giản của ràng buộc để tạo một functor có thể được thay thế bằng lambdas, và shared_ptr/ràng buộc cũng có sẵn trong phiên bản mới nhất của studio trực quan (hoặc gcc cũng bao gồm s chủ đề.)

Khi tôi đang tìm kiếm tài liệu hoặc hướng dẫn, câu hỏi này tiếp tục xuất hiện ở đầu kết quả tìm kiếm, vì vậy điều quan trọng là giữ cho nó được cập nhật khi có hướng dẫn mới.

+0

Liên kết tuyệt vời! Chắc chắn là một hướng dẫn tốt để bắt đầu với asio – Ralf

+0

Liên kết tốt đẹp rất tốt – Ghita

+1

Cảm ơn bạn đã đăng liên kết này. Thật không may, tôi cảm thấy rằng chỉ vì nó đã bắt đầu để có được tốt, tác giả bỏ bóng, đổ bạn thẳng vào thư viện anh/cô ấy tạo ra, và hoàn toàn bị mất tôi. Anh ta/cô ấy đã giải thích chi tiết cách 'ràng buộc' hoạt động để rời khỏi người đọc để đoán xem 'Hive' là gì trong thư viện của họ. –

4

Các tài liệu ASIO, là có sẵn trong thúc đẩy, là tối giản nhưng rất chính xác, mỗi từ có ý nghĩa. Điều đó nói rằng, tôi đã học được asio (và tiếp tục học) chủ yếu từ SO.

Theo tôi, các answer để 'Confused khi boost :: ASIO :: io_service phương pháp chạy khối/unblocks' là bước đầu tiên, đọc một đọc một lần nữa cho đến khi bạn thực sự hiểu nó, second answer cũng rất hữu ích.

Sau đó, tôi đã đăng ký với RSS newest SO boost-asio tag question và để hai người trả lời sau đây:

Tanner Sansburry, tác giả của câu trả lời ở trên, câu trả lời của ông luôn rất chính xác, toàn diện, với sự tham khảo, thậm chí beautiful schema s. RSS feed
Sehe (xin lỗi Sehe, chỉ có 2). RSS feed

Với tất cả tài liệu đó, bạn sẽ sớm trở thành chuyên gia asio!

0

Một chút muộn cho bữa tiệc nhưng có một cuốn sách được gọi là "Tăng cường lập trình mạng Asio" (xuất bản Packt).

Tôi đã mua một bản sao này, đọc nó vào cuối tuần và sau đó đã viết đầy đủ trên máy chủ trong C++ mà không có nhiều vấn đề.

Tuyên bố từ chối trách nhiệm: Tôi không có liên quan gì đến sách

Các vấn đề liên quan