170 похожих чатов

Есть метод DownloadImagesAsync(photos, token) там внутри он скачивает картинку через

httpClient и формирует объект пейлоада
то есть я пербираю так

foreach(photo as photos)
{
await DownloadImagesAsync(photos, token);
}

но это долго так как по одному выкачивать долго

я переделал под асинхронные стрим

await foreach (var (nomenclaturePhoto, payload) in DownloadImagesAsync(nomenclaturePhotos, cancellationToken))
{
// Process each result asynchronously
payloads.Add(nomenclaturePhoto, payload);
}

но чет скорости я не ощущаю может быть мне нужно мутить асинхронный стрим внутри метода DownloadImagesAsync() на самой качалке?

12 ответов

46 просмотров

у меня подозрение, что async enumerable не для этого :)

Paralle.ForEachAsync(..., ParallelOptions)

а там разве не по умолчанию по ядрам

Alexander- Автор вопроса
Ayrat Hudaygulov
Paralle.ForEachAsync(..., ParallelOptions)

делал при MaxDegreeOfParallelism = 5 валиться тоже

Alexander- Автор вопроса
Ayrat Hudaygulov
ты делал ForEach или ForEachASYNC?

var parallelOptions = new ParallelOptions { CancellationToken = token, MaxDegreeOfParallelism = 5 }; await Parallel.ForEachAsync(photos, parallelOptions, async (photo, ctx) => { await UploadImageToFileStorageAsync(photo, ctx); // скачало затем загрузило });

Alexander
var parallelOptions = new ParallelOptions { Ca...

ну если задыхается на параллельных 5ти запросах, то сервер не вывозит, что делать

Alexander- Автор вопроса
Ayrat Hudaygulov
ну если задыхается на параллельных 5ти запросах, т...

мой локальный комп не вывозит? сомневаюсь

Alexander
мой локальный комп не вывозит? сомневаюсь

так кто там не вывозит-то, нихуя непонятно

Alexander
мой локальный комп не вывозит? сомневаюсь

А что за сервер. Вдруг он решил что нельзя тебе много картинок одновременно качать?

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта