Sobes.tech
Junior — Middle

Wie kann man die Ausführung von Aufgaben ohne Verwendung des eingebauten Ereignis- oder Aufgabenplaners realisieren?

sobes.tech KI

Antwort von AI

Wenn der eingebaute Aufgabenplaner (z.B. cron oder eingebaute Timer) nicht verwendet werden kann, kann die Ausführung von Aufgaben mit Goroutines und Kanälen in Go realisiert werden.

Zum Beispiel kann eine unendliche Schleife in einer separaten Goroutine erstellt werden, die eine bestimmte Zeit wartet und die Aufgabe manuell startet:

package main

import (
    "fmt"
    "time"
)

func aufgabe() {
    fmt.Println("Aufgabe ausführen", time.Now())
}

func main() {
    go func() {
        for {
            aufgabe()
            time.Sleep(1 * time.Hour) // Verzögerung zwischen den Ausführungen
        }
    }()

    select {} // blockiert main, damit das Programm nicht beendet wird
}

Auf diese Weise kann man den Zeitplan selbst verwalten, ohne eingebaute Planer zu verwenden.