Q:

Golang program to implement a global ticker

belongs to collection: Golang Timers & Tickers Programs

0

Here, we will implement a global ticker using time.NewTicker() function and get a tick in every second for infinite time.

All Answers

need an explanation for this answer? contact us directly to get an explanation for this answer

Program/Source Code:

The source code to implement a global ticker is given below. The given program is compiled and executed on the ubuntu 18.04 operating system successfully.

// Golang program to implement a global ticker

package main

import "log"
import "time"

var MyTicker *time.Ticker

func initTicker() {
	MyTicker = time.NewTicker(1 * time.Second)
}

func recvTick() {
	for {
		<-MyTicker.C
		log.Println("Tick Received")
	}
}

func main() {
	log.Println("Ticker started")
	initTicker()

	recvTick()

	time.Sleep(6 * time.Second)
	log.Println("Ticker finished")
}

Output:

2021/04/28 04:07:21 Ticker started
2021/04/28 04:07:22 Tick Received
2021/04/28 04:07:23 Tick Received
2021/04/28 04:07:24 Tick Received
2021/04/28 04:07:25 Tick Received
2021/04/28 04:07:26 Tick Received
2021/04/28 04:07:27 Tick Received
2021/04/28 04:07:28 Tick Received
2021/04/28 04:07:29 Tick Received
2021/04/28 04:07:30 Tick Received
...
...

Explanation:

In the above program, we declare the package main. The main package is used to tell the Go language compiler that the package must be compiled and produced the executable file. Here, we imported the required packages to predefined functions.

In the main() function, we created two functions initTicker() and recvTick() to implement global ticker and got tick in every 1 second for infinite time.

need an explanation for this answer? contact us directly to get an explanation for this answer

total answers (1)

Golang program to perform some other activities wi... >>
<< Golang program to print the received value from th...