Публикации по теме 'coroutine'
Изучение сопрограмм в Python: использование параллелизма и асинхронного программирования
В области программирования параллелизм и асинхронные операции стали незаменимыми для эффективного управления задачами и ресурсами. Python, известный своей простотой и универсальностью, предлагает сопрограммы как мощный инструмент для достижения параллелизма и асинхронного программирования. Сопрограммы позволяют разработчикам писать код, который может приостанавливать и возобновлять свое выполнение, что позволяет эффективно обрабатывать операции, связанные с вводом-выводом, и..
Android — 9 полезных операторов Kotlin Flow, которые вам нужно знать
Операторы лежат в основе Kotlin Flow, как и любого реактивного фреймворка. Это позволяет манипулировать элементами по мере их перехода от наблюдаемого к наблюдателю.
Вот 9 очень важных, но менее известных операторов Kotlin Flow с графикой и примерами.
Давайте начнем!
1. Уменьшить
Оператор сокращения позволяет выполнить операцию над всеми элементами потока, чтобы свести их в один элемент.
Например, приведенная ниже функция сокращения выполняет суммирование всех элементов, и..
Освоение основ сопрограмм Kotlin: фундаментальное руководство для собеседования
Сопрограммы позволяют писать асинхронный код более последовательным и читаемым образом, упрощая работу с фоновыми задачами, такими как сетевые запросы, операции с базами данных и длительные вычисления, без блокировки основного потока (UI).
Конструкторы сопрограмм
Построители сопрограмм — это функции, которые создают сопрограммы. Существует множество различных конструкторов сопрограмм, каждый из которых имеет свою собственную цель.
1. запуск : этот конструктор идеально подходит..
Руководство для начинающих по Kotlin Coroutines: облегченный параллелизм для асинхронного программирования
Параллелизм — важный аспект современного программирования, и разработчики традиционно использовали потоки в качестве основного механизма параллельного программирования. Однако с появлением Kotlin в качестве альтернативы потокам для параллельного программирования появились сопрограммы. В этой статье мы рассмотрим, что такое сопрограммы, как они работают, а также различия между потоками и сопрограммами.
Что такое корутины?
На высоком уровне сопрограммы — это упрощенный механизм..
Упрощенное руководство по Kotlin Coroutines
Автор: Даниэль Медейрос , старший ведущий инженер-программист / архитектор приложений в MobiTV
вступление
Когда дело доходит до Kotlin Coroutines, есть, на что обратить внимание. Если вы еще не использовали аналогичную концепцию на другом языке, начало работы может вызвать затруднения.
Я обнаружил, что вводная документация IntelliJ об этой замечательной функции содержит удивительно утомительные детали. Ниже представлена моя попытка свести эту информацию к основам, которые..
Визуализация сопрограмм: будьте осторожны с этим CoroutineExceptionHandler!
Избегайте великих «Что, черт возьми, случилось с моей сопрограммой??» вопрос
Корутины — отличное решение для многопоточности в проектах вместо необходимости управлять нашими пулами потоков и сопутствующим шаблоном. Однако кривая обучения не так проста, и последствия могут быть ужасными.
Нюанс, о котором я хочу рассказать сегодня, — это великолепный CoroutineExceptionHandler . Вы знаете… это то, что вам нужно, когда вы спрашиваете себя: Что, черт возьми, случилось с моей..
Вопросы по теме 'coroutine'
Совместимы ли функции makecontext () / swapcontext () с C ++
В средах unix семейство функций makecontext()/swapcontext() иногда используется для реализации сопрограмм в C. Однако эти функции напрямую управляют стеком и потоком выполнения. Часто, когда эти низкоуровневые функции сильно отличаются при переходе...
2500 просмотров
schedule
04.10.2021
попытаться проиндексировать локальное «я» с помощью MOAICoroutine в Lua
Я только начинаю с MOAI и пытаюсь создать традиционный игровой цикл с помощью MOAICoroutine. Проблема в том, что когда я передаю ему функцию, которая является частью «класса», построенного с использованием 30log, она возвращает ошибку. Кажется, он...
547 просмотров
schedule
02.12.2021
Урожайность в Boost.Asio Stackful Coroutine
При использовании стековых сопрограмм Boost.Asio, как я могу «вручную» уступить, чтобы у другой сопрограммы или асинхронной операции был шанс запустить? Например, мне нужно выполнить долгое вычисление перед отправкой ответа на команду, полученную из...
3028 просмотров
schedule
28.11.2021
как сделать сопрограмму финишировать первой перед запуском другой сопрограммы
Привет, я новичок в Unity и C # ..
У меня есть два файла сценария в одной сцене,
1 сопрограмма в файле versionchecker.cs для получения данных о номере версии с моего веб-сервера
public string versionURL = "http://localhost/check.php";...
1988 просмотров
schedule
23.11.2021
Как мне передать boost :: asio :: yield_context в мои собственные функции?
Я пишу сетевую библиотеку C ++ 11, которая использует Boost.Asio под капотом. Я хочу предоставить API, который позволяет пользователям использовать составные сопрограммы. Как мне принять параметр boost::asio::yield_context в моих функциях API? По...
1205 просмотров
schedule
20.11.2021
Скопируйте генератор
Допустим, у меня есть такой генератор
def gen():
a = yield "Hello World"
a_ = a + 1 #Imagine that on my computer "+ 1" is an expensive operation
print "a_ = ", a_
b = yield a_
print "b =", b
print "a_ =", a_
yield b...
11082 просмотров
schedule
20.10.2021
WaitForSeconds перестает работать, когда приложение не в фокусе или на другой вкладке
Я сделал игру WebGL с Unity. Некоторые вычисления не нужны для каждого кадра, поэтому я поместил их в сопрограмму. Но когда игра находится в фоновом режиме, сопрограммы работают медленнее, чем обычно, и ждут дополнительных 5-10 секунд.
Например,...
1177 просмотров
schedule
10.11.2021
Как выглядит стек вызовов при выполнении сопрограмм?
Как я могу визуализировать стек вызовов одного потока, который выполняет функции совместной подпрограммы?
Поддерживает ли какая-либо языковая реализация совместные подпрограммы, работающие в разных потоках?
Я столкнулся с удивительным вопросом о...
61 просмотров
schedule
22.10.2021
Выполнение синхронных вызовов Cloud Firestore при запуске из основного потока
Я создаю приложение на основе версии Android Clean Architecture Kotlin ( https://github.com/android10/Android-CleanArchitecture-Kotlin ).
Используя эту архитектуру, каждый раз, когда вы хотите вызвать вариант использования, запускается сопрограмма...
2836 просмотров
schedule
10.09.2021
Какой бренд сопрограмм реализует Lua?
Может ли кто-нибудь конкретно сказать мне, какой «вкус» реализует Lua сопрограмм? Я спрашиваю, потому что сопрограммы Lua, кажется, хорошо подходят для моей проблемы, когда я хочу иметь возможность приостанавливать функцию в различных точках,...
140 просмотров
schedule
04.10.2021
Сопрограммы и триггеры
Моя проблема в том, что я делаю игру с единством, и я хочу, чтобы когда враг в моей игре сталкивался с препятствием, он наносил x повреждений каждую секунду.
На препятствии "стол" есть коллайдер и скрипт здоровья, а также коллайдер и скрипт для...
645 просмотров
schedule
06.10.2021
Таблица комнаты наблюдения без ссылки на LifecycleOwner
В моем приложении есть компонент, который выполняет определенную работу при обновлении базы данных. Чтобы наблюдать за таблицей Room, мне нужно использовать LiveData, которая требует от меня передачи LifecycleOwner. Мой компонент не имеет ничего...
172 просмотров
schedule
02.10.2021
Можно ли скопировать сопрограммы C ++ 20?
Я играл с сопрограммами C ++ 20 и пытался переместить часть моей кодовой базы, чтобы использовать их. Однако я столкнулся с проблемой, поскольку не похоже, что новые сопрограммы можно скопировать. Объекты generator удалили конструкторы копирования...
369 просмотров
schedule
22.10.2021
CPS Coroutines: Почему в этом примере требуется выхлоп?
Я пытаюсь понять пример сопрограмм из CPS из wikibooks / Haskell , но я не могу понять, почему функция runCoroutineT требует . (<* exhaust) в конце, если я изменю функцию с
runCoroutineT = flip evalStateT [] . flip runContT return ....
75 просмотров
schedule
17.09.2021
Как сбросить переменную IEnumerator?
В моем коде есть сопрограмма движения (которая перемещается на 1 единицу расстояния в секунду).
public IEnumerator Move(int distance){...}
У меня есть список IEnumerator , которые в основном являются вызовами этой сопрограммы:
public...
109 просмотров
schedule
02.10.2021
Вызов сопрограммы Tornado из asyncio
В моем основном цикле событий используется asyncio, но ему нужно вызвать библиотечный метод, который является сопрограммой типа tornado.concurrent.Future . Попытка ожидания в сопрограмме не удалась с RuntimeError .
RuntimeError: Task got bad...
250 просмотров
schedule
19.11.2021
вызов destroy на дескрипторе сопрограммы вызывает segfault
Недавно я начал экспериментировать с сопрограммами C ++, используя gcc-10.
Приведенный ниже код выполняется точно так же, как и предполагалось, до основных выходов, которые разрушают экземпляр task , вызывая отказ оператора _coro.destroy(); ....
236 просмотров
schedule
30.10.2021
Изменить макет из Coroutine
Запуск сопрограммы
GlobalScope.launch(){
get_message_pulling()
}
Мне нужно отредактировать макет из get_message_pulling() , но появляется ошибка
android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that...
151 просмотров
schedule
23.11.2021
time.Sleep приводит к нежелательному поведению
import "fmt"
import "time"
func main() {
array := []int{1, 2, 3}
for _, num := range array {
go func() {
fmt.Println(fucknum)
}(fucknum)
time.Sleep(time.Nanosecond)
}...
74 просмотров
schedule
22.10.2021
Ожидание и асинхронность, сопрограммы никогда не ожидались
Итак, в основном я пытаюсь написать программу, которая может управлять светом волшебника через скрипт Python. Я использую python 3.6 из-за других ограничений. Вот ссылка на проект pywizlight, который я использую для подключения к wizlight....
415 просмотров
schedule
11.10.2021