Публикации по теме 'kotlin-coroutines'
Котлин Корутины
Асинхронное и параллельное программирование играет важную роль в современном мире веб-API и микросервисов, где значительная часть нашего кода посвящена организации сетевых взаимодействий. Использование традиционных синхронных моделей, в которых потоки блокируются в ожидании внешних ответов, не подходит для платформ.
Работа с потоками, синхронизацией и взаимоблокировками — это последнее, чего хотелось бы при написании асинхронных приложений.
Что предлагает Kotlin для облегчения нашей..
Вопросы по теме 'kotlin-coroutines'
Обработка последовательностей в сопрограммах
Я пытаюсь использовать последовательность (например, FileTreeWalk , возвращенный из File.walk) внутри сопрограммы, но моя реализация продолжает блокировать поток пользовательского интерфейса.
Есть ли хороший способ обрабатывать последовательности...
291 просмотров
schedule
14.12.2023
как передать функцию приостановки в качестве параметра другой функции? Котлинские сопрограммы
Я хочу отправить функцию приостановки в качестве параметра, но она показывает, что «Модификатор приостановки не применим к параметру значения». как это сделать?
fun MyModel.onBG(suspend bar: () -> Unit) {
launch {...
6646 просмотров
schedule
25.04.2024
Создание CoroutineDispatcher IdlingResource для тестов эспрессо
Я пытаюсь найти способ красиво реализовать IdlingResource, который будет опрашивать свойство isActive CoroutineDispatcher. Однако из-за отладки никогда не появляется активное задание при проверке этого свойства.
До сих пор я пытался использовать...
839 просмотров
schedule
26.03.2024
Не могу удалить приведение в режиме приостановки
В моем приложении для Android я использую библиотеку Retrofit 2.
Здесь апи
import retrofit2.Response
import retrofit2.http.GET
import retrofit2.http.Path
import retrofit2.http.Query
interface TraderMonitorRestClient {...
96 просмотров
schedule
10.06.2024
Котлин-сопрограммы: возможно ли без стандартной библиотеки?
Мой вопрос скорее теоретический. Я новичок в kotlin (прошел только туториал, не писал никакого реального кода).
При чтении справочника по языку меня смущает тот факт, что «приостановить» является ключевым словом, но я не могу найти ничего похожего...
386 просмотров
schedule
22.12.2023
Kotlin: Как дождаться выхода сопрограммы из режима ожидания без блокировки запуска?
Изменить 2: Мне кажется, я неправильно понял документацию. Я читаю:
runBlocking
Эту функцию нельзя использовать из сопрограммы. Он предназначен для соединения обычного блокирующего кода с библиотеками, написанными в стиле...
4519 просмотров
schedule
02.03.2024
Kotlin Flow выполняет два вызова API параллельно и собирает каждый результат по мере его поступления.
Я пытаюсь реализовать кеш-стратегию, а затем сетевую стратегию для моего вызова API, используя Kotlin Flows . Вот что я сейчас пытаюсь
flowOf(
remoteDataSource.getDataFromCache() // suspending function returning Flow<Data>
.catch {...
3822 просмотров
schedule
06.04.2024
Почему мне все еще нужно добавить job.join() после того, как я использовал runBlocking в Kotlin?
Я изучаю сопрограммы котлина.
Изображение А может получить правильный результат.
Я думаю, что я использовал код runBlocking , и основная функция будет продолжать работать, пока не получит окончательный результат, но изображение B не удалось,...
497 просмотров
schedule
18.11.2023
Не удалось подключиться к серверной части Cloud Firestore
Я пишу приложение для обмена сообщениями, которое использует Firebase Firestore, Storage и Authentication. Сначала при открытии запрашиваются пользовательские данные, и если пользователь с введенным пользователем номером существует, тогда приложение...
729 просмотров
schedule
31.10.2022
Как запустить несколько сопрограмм Kotlin параллельно и дождаться их завершения, прежде чем продолжить
Мне нужно запустить 2 сопрограммы параллельно и дождаться их завершения, прежде чем продолжить. Приведенный ниже код работает, но он использует GlobalScope , что не лучший способ сделать это.
Есть ли способ лучше?
fun getInfo(onSuccess: ()...
812 просмотров
schedule
03.02.2024
Coroutines Исключение теста не обрабатывается ни с TestCoroutineDispatcher, ни с TestCoroutineScope
Использование этого руководства для тестирования сопрограмм. Написание теста, который должен вызвать сбой исключения, вместо прохождения теста. Интересно, что я делаю не так.
private val testDispatcher = TestCoroutineDispatcher()...
947 просмотров
schedule
03.06.2024
Преобразовать RXJava Single в Deferred сопрограммы?
У меня есть Single от RxJava, и я хочу продолжить работу с Deferred from Kotlin Coroutines. Как это сделать?
fun convert(data: rx.Single<String>): kotlinx.coroutines.Deferred<String> = ...
Мне была бы интересна какая-нибудь...
2591 просмотров
schedule
28.10.2022
Фрагмент ViewModel воссоздает вращение экрана
Я создаю приложение с новейшими компонентами архитектуры Android. Я использую firebase firestore в качестве базы данных с навигацией по реактивному ранцу (нижняя навигация). Я успешно могу отображать данные из БД. Но всякий раз, когда я поворачиваю...
803 просмотров
schedule
04.06.2024
Kotlin сопрограммы, как асинхронизировать список вызовов и вернуть результат в виде карты
var responseMap = mutableMapOf<VendorType, ChargeResponse>()
requests.forEach {
val response = when (it.vendorType) {
VendorType.Type1 -> service.chargeForType1()
VendorType.Type2 -> service.chargeForType2()...
86 просмотров
schedule
06.06.2024
Android: невозможное исключение NullPointerException при использовании viewModelscope и withContext
Моя проблема в том, что я получаю невозможное NullPointerException . Когда я получаю доступ к своим данным emailEntity из моего price variable без использования elvis-operator , мой price variable становится нулевым, а я получаю...
343 просмотров
schedule
23.04.2024
В Kotlin один поток может запускать только одну сопрограмму за раз?
Я понимаю сопрограммы и потоки Kotlin так:
Один поток может запускать только одну сопрограмму за раз. Поток может манипулировать несколькими сопрограммами. Он может приостановить сопрограмму и запустить другую сопрограмму. Но в данный момент...
273 просмотров
schedule
25.04.2024
Компромиссы программирования с такими фреймворками, как reactivex, kotlin-coroutines, akka-субъекты?
Все эти фреймворки создают новый уровень абстракции поверх потоков. Например, использование kotlin-сопрограмм, по-видимому, потребует больше циклов ЦП, чем чистые потоки из-за планирования. Для реактивного у нас такая же ситуация, дополнительный...
70 просмотров
schedule
12.12.2023
Тип этой внутренней сопрограммы
У меня есть функция:
fun buttonClick(view: View){
CoroutineScope(Dispatchers.Default).launch{ //this:CoroutineScope
Log.i(TAG,"${this.javaClass.toString()}")
while (this.isActive) {
//...
}
}...
35 просмотров
schedule
05.04.2024
Kotlin async в сопрограмме: исключение поймано и все еще распространяется?
Я запускаю сопрограмму в SupervisorJob с блоком try/catch, окружающим только вызовы await. Исключение из асинхронного блока перехватывается try/catch, но все равно распространяется, и приложение аварийно завершает работу.
Вот что у меня есть:...
53 просмотров
schedule
30.10.2023