|
Заблокирован
|
||||||
Асинхронный стрим17.03.2021, 22:43. Показов 1211. Ответов 2
Метки нет (Все метки)
Пример асинхронного стрима из метанита
Кликните здесь для просмотра всего текста
Я так и не смог увидеть тут проявление асинхронности. Пока foreach не переберет все элементы управление находится в foreach. Что и где тут может выполняться пока идет "работа" по получению очередного элемента в методе GetNumbersAsync()? То есть, где тут плюсы асинхронности? Или по другому - как изменить пример, чтобы асинхронность была очевидной?
0
|
||||||
| 17.03.2021, 22:43 | |
|
Ответы с готовыми решениями:
2
Стрим в richtextbox Стрим транслируем на виртуальную камеру Видео лайв стрим рабочего стола от сервера к клиенту |
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,233
|
||||||
| 17.03.2021, 22:59 | ||||||
|
titan4ik, сравните с версией, где сначала формируется массив, а потом возвращается:
В этом и есть его преимущество, что-то вроде Data streaming-а. PS: мне вообще последние шарповские фичи нравятся - помимо этой, еще nullable reference types может быть очень удобным во время разработки.
1
|
||||||
|
Заблокирован
|
||
| 18.03.2021, 00:01 [ТС] | ||
|
А по основной теме: Это хорошо, что он выплевывает очередной элемент сразу после расчета (кстати, по порядку выдаёт). То есть асинхронность только в этом? В том что очередной элемент выдается сразу после его расчета? Но пока все элементы не рассчитаны, что толку от асинхронности? Управление же все-равно в цикле await foreach. Или нет? По крайней мере, пока await foreach не переберет все элементы код после await foreach не выполняется. По идее, асинхронность должна освобождать поток, в котором вызван асинхронный метод. Какой поток тут освобождается? Я этого пока не понимаю) Ааа..., может быть нужно сделать ещё один отдельный асинхронный метод с await foreach и тогда при его вызове в неком потоке он вернет управление этому потоку, пока не выплюнет все элементы? Но это будет общая асинхронность всего цикла await foreach. А правильно было бы, чтобы управление возвращалось в поток вызова пока готовятся элементы, но как только очередной элемент готов, чтобы он вылетал в этот поток и потом опять управление передавалось бы в поток вызова. Не понятно
0
|
||
| 18.03.2021, 00:01 | |
|
Помогаю со студенческими работами здесь
3
Асинхронный чат Асинхронный метод Асинхронный void Асинхронный сервер асинхронный сервер Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программный отбор элементов справочника Номенклатура по группе 1С
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа.
В качестве фильтра для отбора справочника служит группа номенклатуры.
Отбор под наименованию группы (на. . .
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор элементов справочника Сотрудники по перечислениям 1С
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|