Golang 1.7.3 Context 简单用法.类似sync.WaitGroup

前端之家收集整理的这篇文章主要介绍了Golang 1.7.3 Context 简单用法.类似sync.WaitGroup前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. package main
  2.  
  3. import (
  4. "context"
  5. "fmt"
  6. "time"
  7. )
  8.  
  9. func main() {
  10. ctx,cancelFunc := context.WithDeadline(context.Background(),time.Now().Add(time.Second*10))
  11. t,ok := ctx.Deadline()
  12. if ok {
  13. fmt.Println(time.Now())
  14. fmt.Println(t.String())
  15. }
  16. go func(ctx context.Context) {
  17. fmt.Println(ctx.Value("Test"))
  18. <-ctx.Done()
  19. fmt.Println(ctx.Err())
  20. }(ctx)
  21.  
  22. if ctx.Err() == nil {
  23. time.Sleep(11e9)
  24. }
  25. if ctx.Err() != nil {
  26. fmt.Println("已经退出了")
  27. }
  28. cancelFunc()
  29. }

猜你在找的Go相关文章