【问题标题】:Is it more efficient to use boost::asio::basic_stream_socket::async_read_some instead of boost::asio::async_read?使用 boost::asio::basic_stream_socket::async_read_some 而不是 boost::asio::async_read 是否更有效?
【发布时间】:2010-08-04 20:26:27
【问题描述】:

在高性能数据吞吐量方面,使用 boost::asio::basic_stream_socket::async_read_some 是否比 boost::asio::async_read 更好?

【问题讨论】:

    标签: c++ performance boost boost-asio


    【解决方案1】:

    boost::asio::async_read是组合操作,在documentation中有很好的描述

    这个操作是按照术语来实现的 对流的零个或多个调用 async_read_some 函数,并且是已知的 作为一个组合操作。该程序 必须确保流执行 没有其他读取操作(例如 async_read,流的 async_read_some 函数,或任何其他 执行的组合操作 读取)直到此操作完成。

    任何性能结论都应基于经验数据,具体取决于您的应用。

    【讨论】:

    • 它是一个组合操作是否意味着它可能更慢?
    • @nick,这可能只是意味着它并不比自己调用相同的函数更好(或更糟)。
    猜你喜欢
    • 1970-01-01
    • 2012-01-16
    • 2013-12-21
    • 1970-01-01
    • 1970-01-01
    • 2012-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多