Одновременны ли сопрограммы?
Одновременны ли сопрограммы?

Видео: Одновременны ли сопрограммы?

Видео: Одновременны ли сопрограммы?
Видео: Язык Kotlin 2021 | W7L2 | Сопрограммы (Coroutines), потоки (Flows) 2024, Сентябрь
Anonim

Сопрограммы . Короче говоря, сопрограммы похожи на потоки, выполняющие работу одновременно . Тем не мение, сопрограммы не обязательно связаны с каким-либо конкретным потоком. А сопрограмма может инициировать свое выполнение в одном потоке, затем приостановить и продолжить его выполнение в другом потоке.

Здесь сопрограммы горутин?

Очевидно, имя " горутина "проистекает из этого сходства. Различия между сопрограммы а также горутины находятся: горутины подразумевают параллелизм; сопрограммы в общем нет. горутины общаться по каналам; сопрограммы общаться через операции yield и возобновления.

Кроме того, есть потоки сопрограмм? Концептуально, сопрограммы похожи потоки . Они выполняют единицы работы одновременно. Но в отличие от потоки , сопрограммы не обязательно привязаны к какому-либо конкретному нить . А сопрограмма может начать выполнение за один нить , приостановить выполнение и возобновить на другом нить.

Соответственно, какие сопрограммы запускаются в разных потоках?

Сопрограммы нечего делать с участием Потоки . Сопрограмма методы жестяная банка выполняться по частям с течением времени, но все процессы по-прежнему выполняются одним основным Нить . Если у вас более одного логического процессора, много потоков выполняются на другой ЦП.

Что вы имеете в виду под сопрограммами?

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