goroutine leak คือ goroutine ที่ไม่เคยสิ้นสุด มันค้างอยู่ในสถานะ block หรือทำงานไปตลอด ใช้หน่วยความจำ (และทำให้ object ที่มัน reference ยังคงอยู่) ตลอดช่วงชีวิตของโปรแกรม เนื่องจาก goroutine มีต้นทุนต่ำในการสร้าง จึง leak ได้ง่าย และ leak จะสะสมเงียบ ๆ จนกระทั่ง service เสื่อมประสิทธิภาพหรือหน่วยความจำหมด
สาเหตุที่ 1: block อยู่บน channel ที่ไม่มี sender/receiver
{
ch := ( )
{
ch <-
}()
}
