@CSharpChatЭта группа больше не существует

Страница 589 из 1888
‮ACx0
18.03.2017
20:37:16
Пример нормально кода тогда дай
Например, запрос таблицы и итерация по ней с вычислениями и условиями. Вычисления тяжёлые.

Ilya
18.03.2017
20:37:28
И как он в одном потоке два сразу выполнит?
Он не выполнит, он дождется завершения!

Vyacheslav
18.03.2017
20:37:34
так создают таски потоки или нет?

потому что таски не создают потоков, создаёт потоки или не создаёт код внутри

Google
Vyacheslav
18.03.2017
20:37:34
смотри Task.Delay() - он просто возвращает объект таск и не создаёт поток

Task.Run - возвращает Task и создаёт поток

Таск не создает потоки

Ilya
18.03.2017
20:37:38
Это разные вещи

Сергей
18.03.2017
20:38:08
Таск не создает потоки
Зависит от скедулера, Task.Run - запустит на дефолтном скедулере, а дефолтный это ThreadPoolTaskScheduler

Ilya
18.03.2017
20:38:29
Task.Run - возвращает Task и создаёт поток
Это статический метод, который возвращает таск

Vyacheslav
18.03.2017
20:38:50
короче пиздец

Сергей
18.03.2017
20:38:54
И скедулет его в дефолтный скедулер

‮ACx0
18.03.2017
20:38:57
Он не выполнит, он дождется завершения!
Но где-то же они будут выполняться.

Ilya
18.03.2017
20:38:59
Он не имеет ничего общего с экземпляром Task

Vyacheslav
18.03.2017
20:39:30
до сегодняшнего дня я думал что могу в асинхронность. а теперь это ебаный пиздец. пойду повешусь(нет)

Ilya
18.03.2017
20:39:59
Но где-то же они будут выполняться.
Мой пример кода, где выполнится таск?

Google
Ilya
18.03.2017
20:40:21
Вот этот

Vyacheslav
18.03.2017
20:41:11
тоже умеешь писать async void Foo() { await Bar(); } ?
ну чуть посложней конструкции))

Летучая
18.03.2017
20:42:21
Зависит от скедулера, Task.Run - запустит на дефолтном скедулере, а дефолтный это ThreadPoolTaskScheduler
А можно запустить не на дефолтном? Будет ли от этого какой-либо профит?

Ilya
18.03.2017
20:42:38
Но где-то же они будут выполняться.
Смотри, еще раз, зачем тебе отдельный поток для ожидания?

Сергей
18.03.2017
20:42:53
Можешь конечно

Vyacheslav
18.03.2017
20:43:41


‮ACx0
18.03.2017
20:43:49
Итого: В GUI писать async В Console писать .Result Запустить одновременно можно только через .Run

Ilya
18.03.2017
20:44:34
Не надо трогать Run

Для ожидания чего, наверное?
А если у тебя есть поток системный, который отправляет тебе сигнал, по которому ты можешь завершить таск?

Vyacheslav
18.03.2017
20:45:45
Не надо трогать Run
а если я хочу сделать свой метод асинхронным, тогда можно?

Ilya
18.03.2017
20:46:49
а если я хочу сделать свой метод асинхронным, тогда можно?
Да, но тут были вопросы про уже асинхронные методы

Про http client

Сергей
18.03.2017
20:46:57
А можно запустить не на дефолтном? Будет ли от этого какой-либо профит?
Вообще не часто это видел, но вижу варианты с ограничением канкаренси, ордерингом, хватало дефолтного всегда

Ilya
18.03.2017
20:47:50
Нельзя просто взять и создать таск ?

‮ACx0
18.03.2017
20:49:20
Хочется сделать что-то такое, что сильно изменит ход событий, но нельзя, наверное. Поэтому продолжим медленно подходить к сути.

Google
‮ACx0
18.03.2017
20:49:52
Нельзя просто взять и создать таск ?
А что можно? Action, который вернёт Task?

Ilya
18.03.2017
20:50:27
Как в моем примере, создать taskcompletionsouce

И потом с его помощью управлять состоянием таска

Летучая
18.03.2017
20:51:32
Итого: В GUI писать async В Console писать .Result Запустить одновременно можно только через .Run
async void Run1Task() { await Task1(); } async void Run2Task() { await Task2(); } async Start2Tasks() { Run1Task(); Run2Task(); } Этот код запустит Task2, пока Task1 ещё выполняется. Ну почти одновременно запустишь их, так что не только чз Run же

‮ACx0
18.03.2017
20:52:24
Ilya
18.03.2017
20:52:55
Просто показать, что таски не привязаны к потокам

ADS
18.03.2017
20:54:30
Здравствуйте! В данный момент происходит предстарт новой компании АдиэсКэш и компания даёт каждому новому участнику 100 монет просто за то, что он пройдёт регистрацию на предстарте компании. Сегодня на рекламу в интернете тратятся огромные суммы денег. Каждый пользователь интернета является её участником, Вы либо её зритель, либо её заказчик. Вы видите объявления, выскакивающие сверху, по бокам сайтов, видите её в поисковых системах, в прочем реклама везде и люди платят за её показы разным компаниям. Такие компании-гиганты как Яндекс, Гугл, Фейсбук, Инстаграм и тому подобные уже согласились принимать эту валюту от своих клиентов за предоставление своих услуг, что является гарантией успеха данной валюты. До старта компании осталось всего восемь дней и после этого акция по ста подарочным монетам закончиться и её можно будет приобрести только за 2,5 цента, эта сумма является начальной ценой валюты АдиэсКэш. Продать эти сто монет смогут на старте только активные участники. Активные участники это те участники, которые учувствует в развитии своих структур, а не просто являются покупателями данной валюты. ЛИБО ЖЕ возможен немного другой вариант: пользователи, которые успеют выставить свои сто монет на биржу и попасть в кол-во трёх миллионов монет, смогут выручить 2,5 доллара за свои подарочные 100 монет, на свои кошельки в долларовой валюте. Но зачем же продавать сейчас, если можно продать потом! Какой вариант будет пока не известно, но следя за новостями, мы узнаете об этом. Теперь подробнее о том, как получить прибыль, для этого Вы все сюда и приглашены. Вы можете стать одни из тех, кто просто приобретёт данную валюту по низкой стоимости и будет держать их как ценный товар. Он имеет свой личный курс, который будет расти, как в своё время вырос Биткоин и продолжает расти даже сейчас. Есть второй вариант, куда в Вас и приглашаю. Станьте активными участниками. Регистрируйте в свою структуру новых участников. В будущем начнёте получать проценты за приобретение АдиэсКэш этими людьми из Вашей структуры и получать прибыль в АдиэсКэш валюте. В свою очередь, курс повышается, тем самым сможете продать монеты на бирже уже по другой цене. Как говориться в одной из пословиц про то, что зачем пользоваться своими ста ресурсами, если можно воспользоваться одним процентом ресурсов от ста других, тем самым получить тот же результат и при ЭТОМ дать возможность получить результат и другим, просто рассказав про это. Теперь немного истории про Биткоин, про то, что ждать от АдиэсКэш и почему стоит её приобретать именно сейчас. Вернёмся в 2008-2009 год во времена, когда на рынке появилась первая крипто валюта под названием Bitcoin’s. На предстарте она стоила меньше цента. История та же самая, которая происходит сейчас с АдиэсКэш монетой. Люди, которые поняли и начали приобретать монету стали реально богатыми людьми. На сегодня стоимость одной монеты равна 1224$ или 71 129 рублям 60 копейкам (16.03.2017). АдиэсКэш имеет похожую систему, которую имеет Биткоин. Поэтому у Вас есть два варианта, просто прослушать данную новость, либо подумать и начать действовать и строить сеть и приобретать монеты. Подробнее http://systemmoneys.com/landing/DsTmCX86F4

Летучая
18.03.2017
20:54:51
дайте мне уже мои 100 монет

Летучая
18.03.2017
20:54:57
желательно зеленых

тогда мб и зарегистрируюсь

Ну а смысл, если потоки не создаются?
ну как это какие-то задачи асинхронно выполнятся

Ilya
18.03.2017
20:55:31
Ну а смысл, если потоки не создаются?
Потому что в данной ситуации поток не нужен. Так работает task.delay

Летучая
18.03.2017
20:55:53
если у тебя там не совсем CPU-bound work, то зачем лишние потоки плодить

Ilya
18.03.2017
20:56:34
Нет вычислений, просто ожидание, а зачем создавать поток если он ничего не делает?

‮ACx0
18.03.2017
20:56:44
Ну вот я говорю, у меня два метода, один будет 4-мерную таблицу перебирать и обсчитывать, а второй обрабатывать то, что первый в очередь положил, вот как это правильно запустить?

Ilya
18.03.2017
20:57:33
Если такой вариант то Task.Run

Летучая
18.03.2017
20:57:50
Если у тебя не одно ядро

‮ACx0
18.03.2017
20:58:28
Я понимаю, что мне уже давно пора спать, но докопаться хочется всё же.

Google
Ilya
18.03.2017
20:58:37
Если у тебя консоль и один поток делай всё последовательно

Без очередей и всего такого

Просто посчитал - обработал

‮ACx0
18.03.2017
20:59:13
Долго же

Ilya
18.03.2017
20:59:31
И как ускорить.?

‮ACx0
18.03.2017
20:59:56
Parallel.For

Admin
ERROR: S client not available

‮ACx0
18.03.2017
21:00:08
Он хорошо таблицу перебирает.

Внутри него просто For

Ilya
18.03.2017
21:00:48
Окей, сделай просто p.f без async/await

‮ACx0
18.03.2017
21:01:08
Мне и не надо await.

Я спрашиваю, как одновременно запустить. Почему таски вдруг нельзя создать не понятно, конечно.

Ilya
18.03.2017
21:01:46
А у тебя что много таблиц или что ты собрался распараллелить?

‮ACx0
18.03.2017
21:02:21
var task1 = DoWorkAsync(); var task2 = DoMoreWorkAsync(); await Task.WhenAll(task1, task2);

Вот это же есть.

Тут await, конечно, но убрать не проблема.

Сергей
18.03.2017
21:03:30
Так лучше

Levent
18.03.2017
21:03:30
@Hi10pH264 пожалуйста, смени имя

Ilya
18.03.2017
21:03:32
Вот, начинаешь проникаться

Google
Levent
18.03.2017
21:03:57
@Hi10pH264 пожалуйста, смени имя
Точнее символы в имени

Ибо они создают баг RTL

‮ACx0
18.03.2017
21:04:22
Ilya
18.03.2017
21:04:25
Кот мне прислушался спамер....

Levent
18.03.2017
21:04:35
Какой баг?
Right-To-Left

‮ACx0
18.03.2017
21:04:43
Right-To-Left
Баг в чём?

Levent
18.03.2017
21:04:47


Везде где есть твое имя - так

‮ACx0
18.03.2017
21:05:11
Вот, начинаешь проникаться
Так это же создание тасков, разве нет?

Levent
18.03.2017
21:05:12
Нотфикации, да все что угодно

‮ACx0
18.03.2017
21:05:16
Это не баг

Levent
18.03.2017
21:05:39
Это не баг
Ты используешь символ не из языка

А лишь чисто символ который создает это

Ilya
18.03.2017
21:05:50
Так это же создание тасков, разве нет?
Никаких тасков, Parallel.for достаточно

Летучая
18.03.2017
21:08:15
Ну это несерьезно

От "Как это работает" мы перешли к "Поясни за шмот"

Владимир
18.03.2017
21:08:56
> Валюта имеет Криптовалютный вид проиграл

Страница 589 из 1888

Эта группа больше не существует Эта группа больше не существует