|
0 / 0 / 0
Регистрация: 30.08.2014
Сообщений: 99
|
|
Многопоточный поиск строки в файле31.08.2014, 02:39. Показов 5972. Ответов 17
Метки нет (Все метки)
как создать функцию?
необходимо в файле вида 5255 3333 5555 6565 2222 найти строку 2222? если строка найдена вернуть "ok" и остановить поиск в файле. обращаться к функции будут много потоков.
0
|
|
| 31.08.2014, 02:39 | |
|
Ответы с готовыми решениями:
17
|
|
|
||||||||
| 31.08.2014, 03:02 | ||||||||
|
Добавлено через 9 минут
0
|
||||||||
|
0 / 0 / 0
Регистрация: 30.08.2014
Сообщений: 99
|
|
| 31.08.2014, 03:07 [ТС] | |
|
у меня пишет постоянно
Дополнительные сведения: Процесс не может получить доступ к файлу "G:\id.txt", так как этот файл используется другим процессом.
0
|
|
|
|
|
| 31.08.2014, 03:09 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 30.08.2014
Сообщений: 99
|
|||||||
| 31.08.2014, 03:14 [ТС] | |||||||
|
я написал так
один Добавлено через 45 секунд Добавлено через 2 минуты я наверно не правильно lock ставлю (((((((((( Добавлено через 50 секунд ФАЙЛ ОДИН. я прошу прощения не увидел ваш вопрос
0
|
|||||||
|
|
||
| 31.08.2014, 07:54 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 30.08.2014
Сообщений: 99
|
|
| 01.09.2014, 22:15 [ТС] | |
|
расскажу принцип работы
мне нужно создать функцию которая будет работать в потоке 1. открывает файл ищет строку 2. если строка найдена возрощает 0 3. если нет 1 4. Другая функция записывает строки в файл (строки парсятся с сайта) пробовал но пишет файл занят другим процессом и вылетает (((
0
|
|
|
Заблокирован
|
|
| 01.09.2014, 22:57 | |
|
divert, может вы решаете задачу не так, как нужно?Вы уверены, что многопоточность лучшее решение? Лучше опишите то, что вы решаете в общих чертах. Правильно ли я вас понял:
1 функция записывает спарсенную инфрмацию в файл, а 2-ая одновременно ищет в том-же файле определенную строку?
0
|
|
|
352 / 331 / 49
Регистрация: 12.12.2011
Сообщений: 563
|
|
| 01.09.2014, 23:05 | |
|
Многопоточность прироста к скорости не даст, все потоки упрутся в скорость чтения с жесткого диска.
Один из вариантов вышеописанной проблемы чтение файла в массив с последующим разделеним на блоки которые нужно будет распределить между потоками. В общем овчинка выделки не стоит, если только счет файлов не идет на сотни или тысячи
0
|
|
|
0 / 0 / 0
Регистрация: 30.08.2014
Сообщений: 99
|
||
| 02.09.2014, 00:14 [ТС] | ||
|
наверно вы правы. надо все строки по таймеру раз в 1 сек загружать в масив а потом сравнивать на совпадение в потоке. а если строк будет более 100 000 ?
Добавлено через 47 минут просто мне нужна функция которая не давала повторно зайти по ссылки которая в файле (ссылка уже парсилась)
0
|
||
|
8 / 8 / 6
Регистрация: 14.06.2013
Сообщений: 65
|
||||||
| 02.09.2014, 00:23 | ||||||
|
эта ошибка вылетает когда файл во время выполнения открыт например блокнотом, рекомундую закрыть все программы которые могут испольовтаь данный файл, может проект перегрузить.
либо кароче сделай так
0
|
||||||
|
0 / 0 / 0
Регистрация: 30.08.2014
Сообщений: 99
|
|||||||||||
| 02.09.2014, 00:50 [ТС] | |||||||||||
|
спасибо я пробывал так
то есть так
0
|
|||||||||||
|
Заблокирован
|
|
| 02.09.2014, 00:56 | |
|
divert, так может вы просто не той дорогой идете? Может есть способ вообще не писать в файл, а хранить все в списке и уже с ним работать?
0
|
|
|
0 / 0 / 0
Регистрация: 30.08.2014
Сообщений: 99
|
|
| 02.09.2014, 00:59 [ТС] | |
|
всмысле так ? List<string> ToWrite = new List<string>();
Добавлено через 52 секунды и работать с ним ? он будет в памяти сидеть ? много он строк может хранить ?
0
|
|
|
Заблокирован
|
|||
| 02.09.2014, 01:02 | |||
|
divert, да
Добавлено через 2 минуты повторюсь:
0
|
|||
|
0 / 0 / 0
Регистрация: 30.08.2014
Сообщений: 99
|
|
| 02.09.2014, 10:06 [ТС] | |
|
а как правильно написать функцию для поиска строки в List<string> ToWrite = new List<string>();
Добавлено через 9 часов 1 минуту я понимаю мне надо использовать FindAll есть List<string> ToWrite = new List<string>(); в ToWrite записаны поля вида http://ya.ru http://mail.ru ....... как написать условие что в ToWrite есть уже http://ya.ru
0
|
|
|
Life Builder
531 / 496 / 374
Регистрация: 12.01.2011
Сообщений: 1,755
|
||||||||||||
| 02.09.2014, 13:35 | ||||||||||||
|
divert, может вам это нужно
0
|
||||||||||||
|
0 / 0 / 0
Регистрация: 30.08.2014
Сообщений: 99
|
|
| 06.09.2014, 14:03 [ТС] | |
|
спасибо всем!
0
|
|
| 06.09.2014, 14:03 | |
|
Помогаю со студенческими работами здесь
18
Поиск строки в файле Поиск строки в файле Поиск строки в файле Поиск строки в файле Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip
. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536
Одним из. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|