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

Есть ли разница между Task и Parallel в выполнении одного

метода ? Они оба будут использовать другие ядра я так понимаю ?

8 ответов

15 просмотров

Разницу между асинхронным и параллельным кодом понимаешь?

Пользователь-61978 Автор вопроса
SomebodyOdd
Разницу между асинхронным и параллельным кодом пон...

Видимо не очень. Полагаю Параллельное это раскидывание обработки данных на разные ядра, чтобы загрузить процессор. Асинхронное нужно чтобы не блокировать вызывающий поток. В методической литературе Task используется вроде в обоих случаях, и я озадачен. Я раньше думал что только Parallel может это. Да я хочу создать массив Task ов, и на каждый свой кусок задачи кинуть. что вроде должно быть аналогично Parallel ?

Пользователь 61978
Видимо не очень. Полагаю Параллельное это раскидыв...

Не гарантируется, что таски будут обработаны параллельно. Чаще всего это так, но не всегда. Если задача вычислительная - лучше использовать Parallel. Если ввод/вывод - таски

Пользователь-61978 Автор вопроса
SomebodyOdd
Не гарантируется, что таски будут обработаны парал...

А использовать вместе так себе идея ? например в основном потоке в цикле создаешь Task , но исполнение через Parallel ? Сама структура Task удобна, паралельно запустил, и потоко безопасная колекция не нужна для результата.

Пользователь 61978
А использовать вместе так себе идея ? например в о...

Чой-та не нужна потокобезопасная коллекция? Вот это новости. Насчёт вместе - зависит от конкретного случая

Пользователь-61978 Автор вопроса
SomebodyOdd
Чой-та не нужна потокобезопасная коллекция? Вот эт...

Ты строишь таск, запихиваешь в массив, запускаешь его в Parallel , делаешь следующий. И когда отработают, у тебя готовый список результата. Или я не понимаю что то ?

Пользователь 61978
Ты строишь таск, запихиваешь в массив, запускаешь ...

Да, но если эти таски обращаются к коллекциям за пределами себя, то потокобезопасность надо соблюдать. Ещё раз - для вычислительных задач лучше подходит Parallel, меньше накладных расходов, больше контроля над тем как оно исполняется.

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
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
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
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
Карта сайта