Sobes.tech
Junior — Middle

¿Cómo se puede implementar la ejecución de tareas sin usar el planificador de eventos o tareas incorporado?

sobes.tech AI

Respuesta de la IA

Si no se puede usar el planificador de tareas incorporado (por ejemplo, cron o temporizadores integrados), la ejecución de tareas se puede implementar mediante goroutines y canales en Go.

Por ejemplo, se puede crear un ciclo infinito en una goroutine separada, que espere un tiempo determinado y ejecute la tarea manualmente:

package main

import (
    "fmt"
    "time"
)

func tarea() {
    fmt.Println("Ejecución de la tarea", time.Now())
}

func main() {
    go func() {
        for {
            tarea()
            time.Sleep(1 * time.Hour) // retraso entre ejecuciones
        }
    }()

    select {} // bloquea el main para que el programa no termine
}

De esta manera, se puede gestionar el horario de forma independiente, sin usar planificadores incorporados.