Boost Asio总结(5)class tcp
1.
class tcp { public:/// The type of a TCP endpoint.端點(diǎn)類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的連接、斷開、數(shù)據(jù)收發(fā)和地址解析等功能。
. acceptor對應(yīng)Socket API的accept()函數(shù),用于服務(wù)器端。acceptor可以像傳統(tǒng)socket API一樣使用,open()打開端口,bind()綁定再用listen()偵聽端口,但更方便的是使用它的構(gòu)造函數(shù),傳入endpoint直接完成這三個(gè)動(dòng)作。
1.2
step1. socket在構(gòu)造時(shí)指定使用的協(xié)議或者endpoint(endpoint包含IP地址和通信用的端口號(hào))
step2. 調(diào)用成員函數(shù)connect()。連接成功后可以用local_endpoint()和remote_endpoint()獲得連接兩端的端點(diǎn)信息,用available()獲取可讀取的字節(jié)數(shù)
step3. 用receive()/read_some()和send()/write_some()讀寫數(shù)據(jù),
step4. 當(dāng)操作完成后使用close()函數(shù)關(guān)閉socket。如果socket沒有被關(guān)閉,則其析構(gòu)時(shí)也會(huì)自動(dòng)關(guān)閉。
總結(jié)
以上是生活随笔為你收集整理的Boost Asio总结(5)class tcp的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Boost Asio总结(4) io_s
- 下一篇: Boost Asio总结(7)class