Скачивание файлов с одинаковым именем в многопотоке

eagleowl

Client
Регистрация
03.11.2012
Сообщения
263
Благодарностей
30
Баллы
28
Если несколько потоков одновременно скачивают файл с одним и тем же именем - например 123.jpg, то они все записываются в \Progs\Trash\123.jpg, то есть в одно и то же место, перезаписывая друг друга - так получается? Я правильно понимаю?
Если так то как мне качать файлы в многопотоке, если постоянно имена совпадают?
 

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 763
Благодарностей
1 391
Баллы
113

orka13

Client
Регистрация
07.05.2015
Сообщения
2 177
Благодарностей
2 184
Баллы
113
а разве там не добавляет к назвагнию файла приставку, типа 123(1).jpg если файл уже существует в папке?
 
  • Спасибо
Реакции: eagleowl

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
а разве там не добавляет к назвагнию файла приставку, типа 123(1).jpg если файл уже существует в папке?
добавляет, но в многопотоке всё равно захлёбывается
 
  • Спасибо
Реакции: devffy, WebBot и eagleowl

eagleowl

Client
Регистрация
03.11.2012
Сообщения
263
Благодарностей
30
Баллы
28

eagleowl

Client
Регистрация
03.11.2012
Сообщения
263
Благодарностей
30
Баллы
28
Странная реализация. Почему нельзя между потоками делить. Это в моей ситауции например очень большо минус, я даже не знаю как это и решить вообще. Мне в один поток работать неимоверно долго выходит, а попытки запуска многопотока приводят к полному трешу - то файлы путаются, то поток пытается удалить файл который уже удален другим потоком, а то и вовсе перезаписан.
 

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 763
Благодарностей
1 391
Баллы
113
string captcha_file = ZennoPoster.HttpGet(captcha_url, "", "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.File,30000,"","",true,5,new string[]{""},project.Variables["captcha_dir"].Value);

project.Variables["captcha_dir"].Value - тут должен быть путь к папке для скачивания .. ее нужно генерить в каждом потоке и создавать где-нибудь, например в директории Trash
 
  • Спасибо
Реакции: eagleowl

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)