Unlimited Channel

  • Grow unlimitedly
  • throw OutOfMemoryException
  • hand if empty on receive

Buffered Channel

  • Limited size
  • Suspend if full

Rendezvous channel 会合通道

  • Suspend until the other end is ready
  • Default

Conflated Channel

  • Overwrite previous element
val rendezvousChannel = Channel<String>() // default
val bufferedChannel = Channel<String>(10)
val conflatedChannel = Channel<String>(CONFLATED)
val unlimitedChannel = Channel<String>(UNLIMITED)