Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Как suspendCancellableCoroutine помогает работать с колбэками?
suspendCancellableCoroutine приостанавливает корутину и предоставляет Continuation, который можно возобновить вручную. Это позволяет обернуть API с колбэками в suspend-функцию, делая код линейным. Если корутина отменяется, можно корректно освободить ресурсы.
Как защитить задачу от отмены (cancel)?
Используйте asyncio.shield() или ловите asyncio.CancelledError для защиты критических операций. Однако полной гарантии нет — событийный цикл может завершиться в любой момент.
Что произойдёт с корутиной, запущенной в GlobalScope, если вызвать cancel() на родительском скоупе?
Корутины в GlobalScope не зависят от других CoroutineScope, поэтому их нельзя отменить через cancel() родительского скоупа. Они продолжат выполняться, пока не завершатся самостоятельно или не будет вызван cancel напрямую.
Зачем нужен CancellationToken?
CancellationToken позволяет безопасно отменять длительные операции. Он работает как сигнал, который одна часть программы может отправить другой, чтобы сообщить о необходимости прекратить работу. Это особенно полезно когда пользователь нажимает кнопку "отмена" или когда приложение закрывается. Такой подход помогает избежать утечек ресурсов и делает приложение более отзывчивым.
Рейтинг:
4
Сложность:
5
Рейтинг:
1
Сложность:
5
Рейтинг:
2
Сложность:
7
Рейтинг:
4
Сложность:
6