inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

냉동코더의 알기 쉬운 Modern Android Development 입문

Flow 기초

Coroutine에 관하여

384

dbfl00915

작성한 질문수 1

0

Kotlin Flow 부분을 학습하며 Coroutine을 공부하던 중 궁금한 점이 생겨 질문올립니다!!

다음과 같이 runBlocking안 launch를 통해 coroutineScope 안에서 thread가 실행되는 것은 이해가 갔습니다! 여기서 launch 밖 코드(1)은 어디서 실행되는 것인지 알 수 있을까요???

fun main() = runBlocking<Unit> {
	launch { //main thread
		for (k in 1..3){
			println("I'm not blocked $k")
			delay(100)
            
                 }
        }
        println("hello") //(1)
}

kotlin android architecture jetpack

답변 2

1

dbfl00915

친절한 답변 감사드립니다! 제가 아직 코루틴에 대해 정확히 이해하고 있지 않은 것 같네요..ㅠㅠ 참고해서 공부해보도록 하겠습니다!! 감사합니다!!

1

냉동코더

주석을 잘못 쓰신것 같습니다. 코루틴스코프 안에서 스레드가 실행되는 것이 아니고 main 블럭이 메인 스레드가 되는거고 launch는 그 안에서 코루틴을 하나 생성하는 것입니다.

그러니까 메인 스레드안에서 launch로 코루틴을 만든 뒤, hello가 실행되고, 그 다음은 코루틴이 수행되게 되니까 다음과 같은 출력이 나오게 됩니다.

hello

I'm not blocked 1

I'm not blocked 2

I'm not blocked 3

 

Coroutine, Flow 질문

0

385

1

Transformations import 안됨

0

575

1

moshi관련 질문입니다.

0

548

2

searchBooks() 에서 북 검색 입력을 너무 빨리 할 경우 마지막 글자로 검색이 안돼요.

0

359

1

안드로이드에서 아키텍처 패턴

0

409

1

RecyclerView.Adapter vs ListAdpater

0

463

1

Flows 와 Coroutine

1

558

1

[BookSearchAdapter] onBindViewHolder의 currentList[position] 질문

0

360

1

코루틴 메모리 관련해서 질문드립니다!

0

444

1

Java Bill Pugh Solution 에서 INSTANCE

0

461

1

nested json에서 특정 부분만 파싱하는법

0

493

1

Fragment에서의 viewBinding

0

517

3

toolbar 질문드립니다.

0

407

2

EditText 에서 delay 주셔서 처리하셨는데 flow 의 debounce() 하고 같은건가요?

2

564

1

코루틴 관련 질문

0

541

1

오류

1

491

2

강사님! 직렬화 라이브러리를 Moshi, kotlin serialization 두개를 사용하시던데 이유가 있으신가요?

1

743

1

EditText 는 kill 해도 값이 잘 저장되어있던데 혹시 제가 잘못테스트했을까요?

1

348

1

서버도 페이징 기능이 되는데 Paging 라이브러리가 필요할까요?

1

523

1

GSON 이 아닌 Moshi 를 사용하시는 이유가 있을까요?

1

1265

1

EditText 는 액티비티가 재생성되어도 값이 남아있던데 이유가 궁금해요

1

495

1

ViewModel 생성시 왜 초기값을 받지 않도록 했을까요?

1

436

1

Room DB에 id 항목 추가

0

249

1

안녕하세요. 용어에 대해 질문이 있어 글 남깁니다.

0

402

2