Sobes.tech
Senior

Is er een deadline?

sobes.tech AI

Antwoord van AI

In Go wordt een deadline meestal begrepen als een beperking in de uitvoeringstijd van een operatie of context.

In de standaardbibliotheek wordt de context-package gebruikt om de uitvoeringstijd te beheren en operaties te annuleren. De context kan een deadline hebben — een tijd waarna de operatie als verlopen wordt beschouwd en moet worden geannuleerd.

Voorbeeld van het maken van een context met een deadline:

ctx, cancel := context.WithDeadline(context.Background(), time.Now().Add(2*time.Second))
defer cancel()

select {
case <-time.After(3 * time.Second):
    fmt.Println("Operatie voltooid")
case <-ctx.Done():
    fmt.Println("Deadline verstreken of context geannuleerd")
}

Zo is de deadline een manier om een tijdslimiet voor operaties in te stellen, om oneindig wachten te voorkomen.