Czytam Kotlin Coroutine i wiem, że opiera się na suspendfunkcji. Ale co to suspendznaczy? Program lub funkcja zostaje zawieszona? Z https://kotlinlang.org/docs/reference/coroutines.html Zasadniczo programy te to obliczenia, które można zawiesić bez blokowania wątku Słyszałem, jak ludzie często mówią „wstrzymaj funkcję”. Ale myślę, że to coroutine zostaje zawieszony, ponieważ czeka na zakończenie …
Czytałem dokumentację Kotlin i jeśli dobrze zrozumiałem, dwie funkcje Kotlin działają w następujący sposób: withContext(context): przełącza kontekst aktualnego programu, gdy wykonywany jest dany blok, program przełącza się z powrotem do poprzedniego kontekstu. async(context): Uruchamia nowy program w podanym kontekście i jeśli wywołasz .await()zwrócone Deferredzadanie, zawiesza on wywołujący program i wznawia …
Obecnie próbuję bardziej wykorzystać kotlin coroutines. Ale mam problem: kiedy używam moshi lub okhttp w tych koronach, dostaję ostrzeżenie: „nieodpowiednie wywołanie metody blokowania” Jak najlepiej to naprawić? Naprawdę nie chcę być nieodpowiednia ;-)
Mam pytania dotyczące Kotlin Flow Mogę obserwować LiveData z wielu fragmentów. Czy mogę to zrobić za pomocą Flow? Jeśli tak to jak? Możemy mieć wiele LiveData z jednego LiveData za pomocą map& switchMap. Czy jest jakiś sposób na posiadanie wielu Flowów z jednego źródła Flow? Za pomocą MutableLiveDatamogę aktualizować dane …
Aktualizacja: Działa, jeśli najpierw wykonam koronę bez limitu czasu, a następnie za pomocą Timeout. Ale jeśli najpierw wykonam coroutine za pomocą Timeout, wówczas pojawi się błąd. to samo dotyczy Async. Tworzę demo wieloplatformową aplikację kotlin, w której wykonuję wywołanie API za pomocą ktor. Chcę mieć konfigurowalną funkcję limitu czasu na …
W ostatnim We / Wy Google Jose Alcerreca i Yigit Boyar powiedzieli nam, że nie powinniśmy już używać LiveData do pobierania danych. Teraz powinniśmy używać funkcji zawieszenia do pobierania jednorazowego i użyć przepływu Kotlina, aby utworzyć strumień danych. Zgadzam się, że coroutines świetnie nadają się do jednorazowego pobierania lub innych …
Czy karliny Kotlin dają jakieś gwarancje „zdarzy się przed”? Na przykład, czy w tym przypadku istnieje gwarancja „dzieje się przed” między zapisem mutableVara późniejszym odczytem (potencjalnie) innego wątku: suspend fun doSomething() { var mutableVar = 0 withContext(Dispatchers.IO) { mutableVar = 1 } System.out.println("value: $mutableVar") } Edytować: Być może dodatkowy przykład …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.