
Boost.Asio C++ Network Programming Cookbook
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
- Enhance your cross-platform network programming skills with one of the most reputable C++ libraries
- Find solutions to real-world problems related to network programming with ready-to-use recipes using this detailed and practical handbook
Book DescriptionStarting with recipes demonstrating the execution of basic Boost.Asio operations, the book goes on to provide ready-to-use implementations of client and server applications from simple synchronous ones to powerful multithreaded scalable solutions. Finally, you are presented with advanced topics such as implementing a chat application, implementing an HTTP client, and adding SSL support. All the samples presented in the book are ready to be used in real projects just out of the box. As well as excellent practical examples, the book also includes extended supportive theoretical material on distributed application design and construction.What you will learn - Boost your working knowledge of one of the most reputable C++ networking libraries-Boost.Asio
- Familiarize yourself with the basics of TCP and UDP protocols
- Create scalable and highly-efficient client and server applications
- Understand the theory behind development of distributed applications
- Increase the security of your distributed applications by adding SSL support
- Implement a HTTP client easily
- Use iostreams, scatter-gather buffers, and timers
Who this book is forIf you want to enhance your C++ network programming skills using the Boost.Asio library and understand the theory behind development of distributed applications, this book is just what you need. The prerequisite for this book is experience with general C++11. To get the most from the book and comprehend advanced topics, you will need some background experience in multithreading.
All prices
More details
Other editions
Additional editions

Person
Dmytro Radchuk is a software engineer from Kyiv, Ukraine. His passion for science started at a young age and led him to receive a degree in computer science from Kyiv Polytechnic University. As of today, he has deep technical knowledge and more than 8 years of experience in the field of software development for several industries and businesses. He strongly believes that the whole is greater than the sum of its parts and this is one of the reasons why the development of distributed applications has become his main specialization. Dmytro has always supported the idea of sharing knowledge and this has resulted in Boost.Asio C++ Network Programming Cookbook, which has become his first officially published book. He believes that science will help us deal with the monotony of everyday life. When he is not exploring another facet of computer engineering, he is probably learning a new aspect of psychology, history, or the arts, which are also of great interest to him.
Content
- Cover
- Copyright
- Credits
- About the Author
- About the Reviewer
- www.PacktPub.com
- Table of Contents
- Preface
- Chapter 1: The Basics
- Introduction
- Creating an endpoint
- Creating an active socket
- Creating a passive socket
- Resolving a DNS name
- Binding a socket to an endpoint
- Connecting a socket
- Accepting connections
- Chapter 2: I/O Operations
- Introduction
- Using fixed length I/O buffers
- Using extensible stream-oriented I/O buffers
- Writing to a TCP socket synchronously
- Reading from a TCP socket synchronously
- Writing to a TCP socket asynchronously
- Reading from a TCP socket asynchronously
- Canceling asynchronous operations
- Shutting down and closing a socket
- Chapter 3: Implementing Client Applications
- Introduction
- Implementing a synchronous TCP client
- Implementing a synchronous UDP client
- Implementing an asynchronous TCP client
- Chapter 4: Implementing Server Applications
- Introduction
- Implementing a synchronous iterative TCP server
- Implementing a synchronous parallel TCP server
- Implementing an asynchronous TCP server
- Chapter 5: HTTP and SSL/TLS
- Introduction
- Implementing the HTTP client application
- Implementing the HTTP server application
- Adding SSL/TLS support to client applications
- Adding SSL/TLS support to server applications
- Chapter 6: Other Topics
- Introduction
- Using composite buffers for scatter/gather operations
- Using timers
- Getting and setting socket options
- Performing a stream-based I/O
- Index
System requirements
File format: ePUB
Copy protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePub works well for novels and non-fiction books – i.e., „flowing” text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our ebook Help page.
File format: PDF
Copy-Protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our eBook Help page.