Главная страница
    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.44 MB
Время: 0.057 c
15-1138622068
Pazitron_Brain
2006-01-30 14:54
2006.02.19
Доступ к FTP без домена


2-1138826027
serko
2006-02-01 23:33
2006.02.19
Form


2-1139040100
Julia
2006-02-04 11:01
2006.02.19
Ошибка на Locate


11-1112893795
Димитрий
2005-04-07 21:09
2006.02.19
Ошибка компиляции модуля kol.pas


4-1133558140
TheEd
2005-12-03 00:15
2006.02.19
Изменить размер шрифта MainMenu





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский