Den*_*lin 4 c++ boost boost-asio
我有一小段代码
boost::asio::ip::tcp::no_delay option(true);
boost::asio::ip::tcp::socket* sock = new boost::asio::ip::tcp::socket(ios);
sock->set_option(option);
_session_acceptor.async_accept(*sock,
boost::bind(&server::playerAccept, this, sock, boost::asio::placeholders::error));
Run Code Online (Sandbox Code Playgroud)
如果我set_option在接受服务器之前调用套接字,则不接受任何连接。但如果我set_option在连接被接受后打电话。难道有什么魔法吗?
您应该调用set_option接受器,而不是套接字。我的项目示例:
Listener::Listener(int port)
: acceptor(io, ip::tcp::endpoint(ip::tcp::v4(), port))
, socket(io) {
boost::asio::ip::tcp::no_delay opt_nodelay(true);
acceptor.set_option(opt_nodelay);
start_accept();
Run Code Online (Sandbox Code Playgroud)