Go Example--超时处理
Posted promenader
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go Example--超时处理相关的知识,希望对你有一定的参考价值。
package main
import (
"fmt"
"time"
)
func main() {
c1 := make(chan string, 1)
go func() {
time.Sleep(time.Second * 2)
c1 <- "result 1"
}()
select {
case res := <-c1:
fmt.Println(res)
//延时器,当上个case超时执行这个case
case <-time.After(time.Second * 1):
fmt.Println("timeout 1")
}
c2 := make(chan string, 1)
go func() {
time.Sleep(time.Second * 2)
c2 <- "result 2"
}()
select {
case res := <-c2:
fmt.Println(res)
case <-time.After(time.Second * 3):
fmt.Println("timeout 2")
}
}
以上是关于Go Example--超时处理的主要内容,如果未能解决你的问题,请参考以下文章