所以我曾尝试:Boost asio socket:从硬盘读取文件的最快方法?
int buff_length = 8192;
ifstream stream;
char* buffer = new char[buff_length];
stream.open(path.string().c_str(), ios::binary);
boost::system::error_code ignored_error;
while (stream)
{
stream.read(buffer, buff_length);
boost::asio::write(*socket, boost::asio::buffer(buffer, stream.gcount()),
boost::asio::transfer_all(), ignored_error);
}
我不知道你是怎么做的 - 怎么办呢更快?
我的应用程序可以在Windows,Linux和Mac OS上运行。这就是为什么我使用提升很多。我使用ab
进行测试。我想在阅读和发送文件时得到2或至少1.5倍的速度。可能是Boost :: Iostream可以帮助我怎么做?
您一次发送多少个文件(一个接一个地发送)?你的文件通常有多大? –