Creare uno scheduler in Go con gocron

Mattepuffo's logo
Creare uno scheduler in Go con gocron

Creare uno scheduler in Go con gocron

gocron è un package per Go che ci permette di creare scheduler di vario tipo.

Premetto che non ho approdondito molto perchè mi è bastato il primo esempio un pò modificato.

Ve ne riporto una versione semplificata.

Cominciamo con l'installazione:

go get github.com/go-co-op/gocron/v2

Qui sotto il codice:

package main

import (
	"fmt"
	"time"

	"github.com/go-co-op/gocron/v2"
)

func main() {
	s, err := gocron.NewScheduler()

	if err != nil {
		fmt.Println(err)
	}

	j, err := s.NewJob(
		gocron.DurationJob(
			2*time.Second,
		),
		gocron.NewTask(
			func(a string) {
				fmt.Println(a)
			},
			"par1",
		),
	)

	if err != nil {
		fmt.Println(err)
	}

	fmt.Println(j.ID())
	s.Start()

	select {
	case <-time.After(time.Minute):
	}

	err = s.Shutdown()
	if err != nil {
		fmt.Println(err)
	}
}

Enjoy!


Condividi

Commentami!