【问题标题】:c++, boost asio, slow readc++, boost asio, 慢读
【发布时间】:2014-01-17 17:20:47
【问题描述】:

我稍微修改了来自this example 的客户端代码。我现在遇到的问题是 boost:asio:read 调用的读取速度真的很慢,大约每秒 2 个字节。

while (boost::asio::read(socket, response, boost::asio::transfer_at_least(1), error));

boost::asio::read(socket, response, boost::asio::transfer_all(), error);

Entire code here

我尝试从包括 google.com 在内的不同服务器获得响应,但结果相同,因此它既不是服务器问题也不是连接问题。我做错了吗?

任何帮助将不胜感激。


可能相关:C++ Boost.ASIO async_read_until slow

【问题讨论】:

  • 您是否尝试过启用handler tracking?您使用的是什么网络传输?

标签: c++ boost boost-asio


【解决方案1】:

读取不慢,只是忘记指定关闭头了:

    request_stream << "Connection: close\r\n";

这使过程迅速。

请注意,由于缓冲,调试输出不是“即时的”,请尝试

std::cout.setf(std::ios::unitbuf);

【讨论】:

    猜你喜欢
    • 2013-09-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多