东方耀AI技术分享

标题: boost_asio_tcp服务器端提供时间服务 [打印本页]

作者: 东方耀    时间: 2021-10-18 17:56
标题: boost_asio_tcp服务器端提供时间服务





boost_asio_tcp服务器端提供时间服务


  1. #include <ctime>

  2. #include <iostream>
  3. #include <string>

  4. #include <boost/asio.hpp>


  5. using boost::asio::ip::tcp;

  6. std::string make_daytime_string(){
  7.     using namespace std;
  8.     auto now = time(nullptr);
  9.     return ctime(&now);  //返回 const char *
  10. }


  11. int main(int argc, char *argv[]){
  12.     std::cout << "boost_asio_tcp服务器端提供时间服务.cpp!" << std::endl;

  13.     try
  14.     {
  15.         boost::asio::io_service io_service;
  16.         // 服务器监听这个端口  服务器绑定地址和端口
  17.         // linux下凡是要绑定1024以下的端口 系统的端口 需要root权限运行
  18.         tcp::acceptor acceptor(io_service, tcp::endpoint(tcp::v4(), 13));
  19.         std::cout << "服务器开启了!\n";
  20.         for(;;){
  21.             tcp::socket socket(io_service);
  22.             // 阻塞的
  23.             acceptor.accept(socket);

  24.             auto message = make_daytime_string();

  25.             boost::system::error_code ignored_error;
  26.             std::cout << "服务器写给客户端的socket:" << message << std::endl;
  27.             // 写给客户端socket
  28.             boost::asio::write(socket, boost::asio::buffer(message), ignored_error);
  29.         }
  30.         // 这里没有输出 其实是有问题的!
  31.         std::cout << "服务器结束了!\n";
  32.     }
  33.     catch(const std::exception& e)
  34.     {
  35.         std::cerr << "异常:" <<  e.what() << '\n';
  36.     }
  37.    

  38.     return 0;
  39. }
复制代码



作者: zouqiqi    时间: 2021-11-23 19:23
让天下人人学会人工智能!人工智能的前景一片大好!
作者: zouqiqi    时间: 2021-11-23 19:24
让天下人人学会人工智能!人工智能的前景一片大好!




欢迎光临 东方耀AI技术分享 (http://www.ai111.vip/) Powered by Discuz! X3.4