Golang time.Ticker.Stop()函数及示例

Golang time.Ticker.Stop()函数及示例

在Go语言中, time 包提供了用于确定和显示时间的功能。在Go语言中, Stop() 函数用于禁用定时器。因此,在调用Stop()方法之后,不会传递更多的ticks。它不关闭通道,以避免并发go-routine从通道读取来查看不准确的“tick”。此外,此函数在time包下定义。在此,您需要导入“time”包以使用这些功能。

语法:

func (t *Ticker) Stop()
Go

在这里,“t”是指向Ticker的指针。Ticker用于保持以时间间隔“传递”时钟的通道。

返回值: 它返回调用stop()方法之前所述操作的输出,因为调用它后,定时器被关闭。

示例:

//Go语言程序演示time.Ticker.Stop()函数的使用
 
//包含主要包
package main
 
//导入fmt和time
import "fmt"
import "time"
 
//调用主函数
func main() {
 
    //调用NewTicker方法
    Ticker := time.NewTicker(2 * time.Second)
 
    //使用make关键字创建通道
    mychannel := make(chan bool)
 
    //Go函数
    go func() {
 
        //使用for循环
        for {
 
            //选择语句
            select {
 
            //选择接收的通道
            case <-mychannel:
                return
 
            //打印当前时间的选择
            case tm := <-Ticker.C:
                fmt.Println("当前时间是:", tm)
            }
        }
    }()
 
    //休眠7秒钟
    time.Sleep(7 * time.Second)
 
    //调用Stop()方法
    Ticker.Stop()
 
    //设置通道的值
    mychannel <- true
 
    //当定时器关闭时输出
    fmt.Println("定时器已关闭!")
} 
Go

输出:

当前时间是: 2020-04-09 07:26:05.374436607 +0000 UTC m=+2.000213251
当前时间是: 2020-04-09 07:26:07.374442201 +0000 UTC m=+4.000218858
当前时间是: 2020-04-09 07:26:09.374511648 +0000 UTC m=+6.000288424
定时器已关闭!
Go

在这里,首先创建了一个Ticker,然后创建了一个传输时间的通道。之后,使用循环打印当前时间,然后调用Ticker.Stop()方法并关闭定时器。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册