Kotlin Channel - 코루틴간 데이터 통신


Kotlin Channel - 코루틴간 데이터 통신

Channel 이란? 앞에서 본 Flow가 단일방향으로 데이터를 던지고 받는 형식이라면 Channel 은 여러 방향에서 데이터를 던지고 받는 형식으로 코루틴 끼리의 데이터를 전달하기 위한 위한 친구이다. 구조는 BlockingQueue 와 비슷하며, 동일하게 ThreadSafe 한 형태의 구조를 가지고 있다. 기본적인 사용법 기본적인 사용법은 간단하다. val channel = Channel() CoroutineScope(Dispatchers.Default).launch { channel.send(it) channel.receive() } channel.close() Channel() 함수를 통해 생성할 수 있으며, 데이터를 스트림에 밀어 넣을 땐 send, 스트림에서 받을 땐 receive 를 사용하면..


원문링크 : Kotlin Channel - 코루틴간 데이터 통신