Nil channel usage

Initialize channels with make() to prevent indefinite blocking caused by nil channel operations.

A nil channel blocks forever on send and receive operations, causing your program to hang indefinitely. To fix this, initialize the channel with make before using it.

ch := make(chan int)

If you need a channel that is always closed (for immediate non-blocking sends), initialize it as a nil channel and close it immediately, or use a buffered channel with capacity 0 if you need synchronization.