|
16 / 16 / 5
Регистрация: 18.05.2012
Сообщений: 39
|
||||||
Многопоточность, потокобезопасность. Простая программа по обработке .txt файлов24.01.2014, 11:26. Показов 1834. Ответов 4
Метки нет (Все метки)
Добрый день, коллеги.
Помогите исправить код. Программа запрашивает количество потоков, делит их между текстовыми файлами исходя из определённой логики. Выводит информацию: номер потока, название файла, который обработался. Во время дебага работает стабильно, во время исполнения без дебага - не так как задумывалось (поток с номером 0 почти никогда не выводится, часто дублируется информация "поток-файл"). Проблема с потокобезопасностью? Как наладить?
0
|
||||||
| 24.01.2014, 11:26 | |
|
Ответы с готовыми решениями:
4
Есть ли простая программа для перевода pdf в txt Программа магазин-склад. Нужно исправить ошибки по обработке файлов |
|
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
|
||
| 24.01.2014, 12:09 | ||
|
2. Пересмотреть логику раздачи содержимого string[] directory потокам.
2
|
||
|
16 / 16 / 5
Регистрация: 18.05.2012
Сообщений: 39
|
||
| 24.01.2014, 12:31 [ТС] | ||
|
Я хочу знать номер потока, который обрабатывает файл. Как я могу узнать этот номер иначе? Неужели эта переменная i может создать нестабильность? Каким образом?
0
|
||
|
708 / 708 / 226
Регистрация: 04.03.2013
Сообщений: 1,384
|
||||||
| 24.01.2014, 13:18 | ||||||
|
Чуть переделал функцию, для простоты функция readfile заменена на консольный вывод.
Кликните здесь для просмотра всего текста
Кстати говоря, про распараллеливание есть неплохая статья, вот. pycture, растолкуйте пожалуйста. Когда переменная i используется в лямбда выражении, понятно что происходит лишь описание метода, и подставлено будет значение актуальное на момент вызова. Исключение IndexOutOfRange можно словить потому что поток, вообще говоря, может быть запущен и после выхода из цикла?
1
|
||||||
|
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
|
||||||||||
| 24.01.2014, 13:30 | ||||||||||
Сообщение было отмечено myjumanji как решение
Решение
Добавлено через 11 минут Неправильный вариант с мутабельной переменной в замыкании http://ideone.com/886Egd Вариант с параметром http://ideone.com/rUk14U
2
|
||||||||||
| 24.01.2014, 13:30 | |
|
Помогаю со студенческими работами здесь
5
Простая программа обмена файлов Простая программа для просмотра списка файлов
Переписать все числа из файлов 1.txt и 2.txt в файл 3.txt Обработка файлов с созданием и использованием файла со списком имён файлов, исключаемых при данной обработке Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|