Форум программистов, компьютерный форум, киберфорум
Наши страницы

Парсинг потоками - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Связный список http://www.cyberforum.ru/cpp-beginners/thread366546.html
... struct node { int data; node *next; }; ... node *temp; 1.temp = (node*)malloc(sizeof(node));
C++ Функция // binary_search_with_fun.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> using namespace std; int *Bin_Srch(int *first, int *last,... http://www.cyberforum.ru/cpp-beginners/thread366544.html
Подсчет через count_if C++
Есть, например, функция, принимающая 2 параметра bool BoolFunction ( параметр1, параметр2 ) { // что - то там } где параметр1 - это элемент типа вектора нужно подсчитать в векторе,...
C++ Ввести размерность матрицы с клавиатуры
Задача: создать массив N*M, (ввод размерности с клавиатуры) и вывести его на экран. Написала код, но где-то видимо туплю, помогите, пожалуйста.:-#include <iostream> using namespace std; int main()...
C++ Написать программу. Строка, состоящая из символов... http://www.cyberforum.ru/cpp-beginners/thread366531.html
Задана строка, состоящая из символов. Символы объединяются в слова. Слова друг от друга отделяются одним или несколькими пробелами. В конце текста ставится точка. Текст содержит не более 255...
C++ Скопировать элементы большие числа а в другой динамически созданный массив Организовать ввод динамического массива размером N. Скопировать элементы большие числа а(а вводится пользователем) в другой динамически созданный массив. Главное чтобы это было все с... подробнее

Показать сообщение отдельно
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
15.10.2011, 08:44
Цитата Сообщение от CEBEP Посмотреть сообщение
Я готов к трудностям.
У тебя один файл или много?
Если один, то ты только потратишь время. Файл слишком маленький, чтобы распараллеливать считывание и парсинг. Если бы размер файла был сопоставим с объёмом оперативной памяти или больше её, то это имело бы смысл, но с файлом 50 мегабайт это не имеет смысла. На синхронизации потоков ты потратишь больше времени, чем выиграешь за счёт параллельной работы.
Если файлов много и ты реализуешь пакетную обработку, то всё несколько проще. Тебе нужно создать два буфера. Считываешь первый, запускаешь его парсинг и в это же время считываешь второй файл во второй буфер. Ждёшь завершения обеих операций, меняешь буферы местами и повторяешь. И чтение и парсинг лучше делать в отдельных потоках; в основной программе выполнять синхронизацию потоков.

Добавлено через 33 секунды
Цитата Сообщение от Евгений М. Посмотреть сообщение
Сомневаюсь, что параллельные операции можно выполнять без использования многопоточности.
MMX, SSE

Добавлено через 41 секунду
А учитывая мультискалярность...
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru