最近在学习编程,网络通信相关的,用了好几款内网穿透,发现神卓互联确实不错,性能强悍,不知道是怎么讲性能优化到极致的,慢慢学习吧,夯实基础,
以下是学习boost的记录,一个客户端demo:
#include <iostream>
#include <boost/asio.hpp>
using namespace std;
int main()
try
{
cout << "client start...." << endl;
//io_service对象
boost::asio::io_service ios;
//创建socket对象
boost::asio::ip::tcp::socket sock(ios);
//创建连接端
boost::asio::ip::tcp::endpoint ep(boost::asio::ip::address::from_string("127.0.0.1"),6688);
//连接
sock.connect(ep);
//定义一个缓冲区
//vector<char>str(100,0);
char data[128];
sock.read_some(boost::asio::buffer(data));
cout << "recive from "<<sock.remote_endpoint().address() << endl;
cout << data << endl;
system("pause");
return 0;
}
catch (exception& e)
{
cout << e.what()<< endl;
}
下面是服务端的demo
#include <iostream>
#include <boost/asio.hpp>
using namespace std;
int main()
try
{
cout << "server start..." << endl;
//io_service对象
boost::asio::io_service ios;
//绑定端口6688
boost::asio::ip::tcp::acceptor acceptor(ios,
boost::asio::ip::tcp::endpoint(boost::asio::ip::tcp::v4(),6688));
cout << acceptor.local_endpoint().address() << endl;
while (1)
{
//socket对象
boost::asio::ip::tcp::socket sock(ios);
//阻塞等待socket连接
acceptor.accept(sock);
cout << "client:" ;
cout << sock.remote_endpoint().address() << endl;
sock.write_some(boost::asio::buffer("hello asio"));
}
return 0;
}
catch (exception& e)
{
cout <<e.what() << endl;
}