close
Closes this channel. This is an idempotent operation — subsequent invocations of this function have no effect and return false
. Conceptually, it sends a special "close token" over this channel.
Immediately after invocation of this function, isClosedForSend starts returning true
. However, isClosedForReceive on the side of ReceiveChannel starts returning true
only after all previously sent elements are received.
A channel that was closed without a cause throws a ClosedSendChannelException on attempts to send and ClosedReceiveChannelException on attempts to receive. A channel that was closed with non-null cause is called a failed channel. Attempts to send or receive on a failed channel throw the specified cause exception.