Что вызывает медлительность при чтении файлов в многопоточной программе на С++ по сравнению с однопоточной?C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Что вызывает медлительность при чтении файлов в многопоточной программе на С++ по сравнению с однопоточной?

Сообщение Anonymous »

У меня есть функция, которая читает файл после выполнения fseek. Я вызываю эту функцию из нескольких потоков и сравниваю ее производительность с той же функцией, вызываемой из однопоточной программы.

Код: Выделить всё

void loadCell(FILE* fp)
{

char cbuf[12];
int clen = rand() % 100;
fseek(fp, clen, 0);
long blen = fread(cbuf, 1, 8, fp);
}

void thread_func() {

auto start = std::chrono::high_resolution_clock::now();
FILE* fp = fopen("./testfile", "r");
for (size_t i=0; i

Подробнее здесь: [url]https://stackoverflow.com/questions/79201905/what-causes-slowness-while-reading-files-in-a-multi-threaded-c-program-vs-sing[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»