Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.02.19;
Скачать: [xml.tar.bz2];

Вниз

Многопоточное приложение для работы с файлами помогоите...   Найти похожие ветки 

 
vip60 ©   (2006-01-17 21:04) [0]

Помогите с решением такой задачи.
  Необходимо создать многопоточное приложение по обработке текстовых файлов-Есть локальная папка в которую через определенное время поступают файлы. Приложение обрабатывает их и переносит в другую.
  Проблема: Как сделать так чтобы каждый поток брал только один файл на обработку...то есть  возникает проблема разделение приходящего файла на много потоков...может получится так что один и тот же файл будет взят на обработку разными потоками т.е. файл-критический ресурс....

Заранее благодарен!!!!


 
Defunct ©   (2006-01-18 02:07) [1]

алгоритм можно изобразить так:

1. Просканировать каталог "входящих".
2. Поочереди переносить каждый файл "входящего" каталога в каталог "обработанных файлов" (либо в "промежуточный").
3. После переноса очередного файла запустить поток по его обработке.
4. Если использовался "промежуточный" каталог, то после окончания работы очередного потока перенести обработанный им файл в каталог "обработанных файлов".
5. Sleep( долго )
6. Goto 1.


Открывать файл можете в fmShareExclusive режиме, таким образом избавившись от возможности "случайного" повторного открытия.


 
Leonid Troyanovsky ©   (2006-01-18 08:42) [2]


> vip60 ©   (17.01.06 21:04)  

>   Проблема: Как сделать так чтобы каждый поток брал только
> один файл на обработку...то есть  возникает проблема разделение
> приходящего файла на много потоков...может получится так
> что один и тот же файл будет взят на обработку разными потоками
> т.е. файл-критический ресурс....


Только один поток следит за появлением новых файлов и передает
другим их имена. Другие потоки открывают файлы эксклюзивно.

--
Regards, LVT.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2006.02.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.958 c
2-1138631840
13
2006-01-30 17:37
2006.02.19
Буфер данных


2-1138774760
dabreezy
2006-02-01 09:19
2006.02.19
Вопрос по TabControl


3-1135158279
yk
2005-12-21 12:44
2006.02.19
Проблемы с подключением udf


1-1137519687
студент России
2006-01-17 20:41
2006.02.19
помогите голодному студенту !


15-1138618567
Ega23
2006-01-30 13:56
2006.02.19
Народ, а у вас всегда так?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский