Запуск Coroutine як завдання Функція launch {} повертає об’єкт Job, який ми можемо заблокувати, доки всі інструкції в співпрограмі не будуть виконані, інакше вони створять виняток. Фактичне виконання співпрограми також можна відкласти до тих пір, поки вона нам не знадобиться з аргументом start. Якщо ми використовуємо CoroutineStart.
Створіть співпрограми
- Відкрийте проект Kotlin в IntelliJ IDEA. Якщо у вас немає проекту, створіть його.
- Щоб використовувати бібліотеку kotlinx.coroutines у проекті Gradle, додайте таку залежність до build.gradle(.kts) : Kotlin. …
- Відкрийте Головне. …
- Змініть код у функції main(): …
- Створіть код, натиснувши «Створити проект».
Запуск Coroutine з області служби Впроваджена область створюється для кожної служби, тому кожен екземпляр має власну ізольовану область із спільним батьківським, який є областю перетину. Впроваджена область скасовується, коли контейнер (програма/проект) закривається або коли плагін вивантажується.
У цьому прикладі співпрограма запускається з робочого потоку за замовчуванням, а потім використовує withContext(Dispatchers. Default) для виконання завдання в робочому потоці за замовчуванням. Потім метод withContext(Dispatchers. Main) використовується для оновлення інтерфейсу користувача (UI) з результатом у потоці інтерфейсу користувача.
// У цьому прикладі ми показуємо, як викликати співпрограму за допомогою імені рядка та зупинити її. Створена співпрограма може запустити іншу співпрограму. Ці дві співпрограми можуть працювати разом різними способами. Це включає обидві співпрограми, що працюють паралельно.