Context Done digunakan untuk cek apakah context sudah selesai atau belum. Contoh code penerapan context done seperti code dibawah ini.
packagemainimport ("context""fmt""time")funcmain() { ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second)defercancel()select {case<-time.After(5* time.Second): fmt.Println("more than 5 second")// jika program berjalan < 5 detik, maka case ini akan di pilihcase<-ctx.Done(): fmt.Println(ctx.Err()) }}