Scope CoroutineBuilder(launch, async)를 생성하는 범위이다. CoroutineBuilder를 통해 만들어진 Coroutine들은 기본적으로 해당 Scope의 Context를 전달받는다. 즉 Scope는 Coroutine을 만들 수 있는 범위이며, cancel같은 함수로 해당 Scope의 Coroutine을 관리할 수 있다. val scope = CoroutineScope(Dispatchers.IO) val job = scope.launch { // 기본적으로 스코프의 Context 영향을 받는다. (IO) launch { // 상위 스코프의 Context를 가져온다. (IO) } launch(Dispatchers.Main) { // Context를 재정의 할 수 있다. (Ma..
Coroutine Coroutine은 동기/비동기를 효율적으로 프로그래밍하기 위한 하나의 동시성 프로그래밍 설계 개념입니다. Kotlin뿐만 아니라 다른 언어에도 존재하는 개념이고 오래된 개념입니다. Android에서 Coroutined은 비동기적으로 실행되는 코드를 간결하게 작성할 수 있고, Thread보다 성능이 좋으며, Jetpack에서 많은 기능을 지원하는 장점이 있습니다. Thread vs Coroutine Thread는 고유한 Stack가 할당되며 동시성을 보장하기 위해 OS가 스케쥴링을 하여 적합한 Thread를 실행하고 Context Switching으로 인한 오버헤드가 발생하고 중지된 Thread는 OS의 선택을 받기 위해 기다립니다(Blocking한다고 표현함). Coroutine은 L..
- Total
- Today
- Yesterday
- ConcatAdapter
- commit
- 코루틴
- Exception
- Coroutine
- git
- 연산자
- TDD
- 보이스카우트 규칙
- 클린코드
- clean code
- viewmodel
- observable
- ViewModelStoreOwner
- Android
- ConcatAdapter.Config
- ViewModelProvider
- null
- rxjava
- isActive
- Flowable
- Flutter
- DART
- CancellationException
- DSL
- Widget
- Kotlin
- 클린 코드
- gradle
- 함수
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
