본문 바로가기

통신

(2)
suspendCancellableCoroutine 이란 suspendCancellableCoroutine게시글을 이해하기 위해서 필요한 지식들1. 코루틴에 대한 기본적인 개념2. 코틀린3. 안드로이드4. Firebase Firestore5. Firebase Storage  CancellationException 을 제공해주는 코루틴이다. 외부와 통신을 했을때 콜백의 작업이 다 끝나고 났을때 해당 결과값을 사용하고 싶을때 쓰는 기술이다.  안드로이드에선 통신에 대한 결과 처리를 콜백에서 처리하게끔 구현하는 기술들이 많다. 이번 게시글에서 소개할 코드에서 쓰는 Firestore도 그렇고 Retrofit또한 그러하다. 콜백에서 요청에 대한 응답값을 받아왔오면 우리는 해당 응답값을 바탕으로 다음 작업을 진행하기를 원한다. 하지만 오늘 소개할 susepndCancel..
동기(Synchronous), 비동기 (Asynchronous), blocking, non blocking 동기(Synchronous : Sync(동시) + chrono(시간)) -어떤 작업이 다 끝나고 난 뒤에 가능한 작업. 다르게 표현하면 원래 진행됐던 작업이 제어권을 다른 작업에게 넘겨서 자신은 일을 못하고 그 다음 작업이 일을 진행하는 것이다. 예시 : 음식점에서 배달의 민족 주문이 들어왔다고 치자. 주문이 들어가기 전까지는 요리사가 딱히 어떤 작업을 하고 있지 않다. 하지만 주문이 들어오고 나서 음식의 조리를 시작한다. 주문자는 음식을 수령하기 전까지는 별다른 일을 하고 있지 않다. (제어권을 요리사에게 넘긴 셈이다.) 요리사는 음식의 준비가 완료되면 포장을 하고 배달 기사님께 전달드린다. (제어권이 요리사에서 배달기사에게로 넘어간다.) 배달기사는 음식을 수령받기 전까지는 별다른 일을 하고 있지 않다..