Vì vậy, tôi đã cố gắng:Tăng ổ cắm asio: cách nhanh nhất để đọc tệp từ ổ đĩa cứng?
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);
}
Tôi tự hỏi làm thế nào bạn làm điều đó - làm thế nào để làm điều đó nhanh hơn?
Ứng dụng của tôi sẽ hoạt động trên Windows, linux và mac os. Đó là lý do tại sao tôi sử dụng rất nhiều. Tôi sử dụng ab
để thử nghiệm. Tôi muốn có được 2 hoặc ít nhất 1,5 lần nhanh hơn về đọc và gửi tệp. Có thể được tăng cường :: Iostream có thể giúp tôi bất kỳ cách nào?
Bạn gửi bao nhiêu tệp cùng một lúc (cái này theo cái kia)? Các tệp của bạn lớn đến mức nào? –