• GO TIME


    #go语言的time包 ##组成

    • time.Duration(时长,耗时)
    • time.Time(时间点)
    • time.C(放时间点的管道)[ Time.C:=make(chan time.Time) ]

    time包里有2个东西,一个是时间点,另一个是时长
    时间点的意思就是“某一刻”,比如 2000年1月1日1点1分1秒 那一刻(后台记录的是unix时间,从1970年开始计算)
    时长就是某一刻与另一刻的差,也就是耗时

    ##函数 ###Sleep函数 time.Sleep(time.Duration)
    表示睡多少时间,睡觉时,是阻塞状态

    fmt.Println("start sleeping...")
    time.Sleep(time.Second)
    fmt.Println("end sleep.")
    //【结果】打印start sleeping后,等了正好1秒后,打印了end sleep
    //会阻塞,Sleep时,什么事情都不会做
    

    time.sleep

    ###After函数 time.After(time.Duration)
    和Sleep差不多,意思是多少时间之后,但在取出管道内容前不阻塞

    fmt.Println("the 1")
    tc:=time.After(time.Second) //返回一个time.C这个管道,1秒(time.Second)后会在此管道中放入一个时间点(time.Now())
                            //时间点记录的是放入管道那一刻的时间值
    fmt.Println("the 2")
    fmt.Println("the 3")
    <-tc   //阻塞中,直到取出tc管道里的数据
    fmt.Println("the 4")
    //【结果】立即打印123,等了1秒不到一点点的时间,打印了4,结束
    //打印the 1后,获得了一个空管道,这个管道1秒后会有数据进来
    //打印the 2,(这里可以做更多事情)
    //打印the 3
    //等待,直到可以取出管道的数据(取出数据的时间与获得tc管道的时间正好差1秒钟)
    //打印the 4
  • 相关阅读:
    说说该死的Google Android Market
    由HTML5绘制地图说开去
    unicode解码小工具
    IntelliJ IDEA 的安装、配置与使用
    再次强调!考试必带的十几样物品,一样也不能少
    Redis 实现限流的三种方式
    Linux配置/etc/resolv.conf详解
    人生哲学
    一文教你如何高效使用 IDEA !
    Mysql5.7.30_配置参数
  • 原文地址:https://www.cnblogs.com/justart/p/11662752.html
Copyright © 2020-2023  润新知