Boost Asio总结(5)class tcp
生活随笔
收集整理的這篇文章主要介紹了
Boost Asio总结(5)class tcp
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.
class tcp { public:/// The type of a TCP endpoint.端點類typedef basic_endpoint<tcp> endpoint;/// The TCP socket type.套接字類typedef basic_stream_socket<tcp> socket;/// The TCP acceptor type.接收器typedef basic_socket_acceptor<tcp> acceptor;/// The TCP resolver type.解析器typedef basic_resolver<tcp> resolver;/// The TCP iostream type.流類typedef basic_socket_iostream<tcp> iostream;/// ...... };1.1
. endpoint 等等封裝了socket的連接、斷開、數據收發和地址解析等功能。
. acceptor對應Socket API的accept()函數,用于服務器端。acceptor可以像傳統socket API一樣使用,open()打開端口,bind()綁定再用listen()偵聽端口,但更方便的是使用它的構造函數,傳入endpoint直接完成這三個動作。
1.2
step1. socket在構造時指定使用的協議或者endpoint(endpoint包含IP地址和通信用的端口號)
step2. 調用成員函數connect()。連接成功后可以用local_endpoint()和remote_endpoint()獲得連接兩端的端點信息,用available()獲取可讀取的字節數
step3. 用receive()/read_some()和send()/write_some()讀寫數據,
step4. 當操作完成后使用close()函數關閉socket。如果socket沒有被關閉,則其析構時也會自動關閉。
總結
以上是生活随笔為你收集整理的Boost Asio总结(5)class tcp的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Boost Asio总结(4) io_s
- 下一篇: Boost Asio总结(7)class