Итак, я попробовал:
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. Вот почему я использую Boost много. Я использую ab
для тестирования. Я хочу получить в 2 или, по крайней мере, в 1,5 раза быстрее при чтении и отправке файлов. Может быть, Boost :: Iostream может мне чем-нибудь помочь?