// 摘自Go语言编程
timeout := make(chan bool, 1)
go func() {
time.Sleep(1e9) // 指定超时时长
timeout <- true
}()
//
select {
case <-ch: // read something from ch
case <-timeout: // 指定时间内没有读到内容,则从timeout中读取内容,程序继续运行,解决永久等待的问题
}
// 摘自Go语言编程
timeout := make(chan bool, 1)
go func() {
time.Sleep(1e9) // 指定超时时长
timeout <- true
}()
//
select {
case <-ch: // read something from ch
case <-timeout: // 指定时间内没有读到内容,则从timeout中读取内容,程序继续运行,解决永久等待的问题
}