Sobes.tech
Senior

Există o dată limită?

sobes.tech AI

Răspuns de la AI

În Go, termenul de deadlinе este de obicei înțeles ca o restricție de timp pentru executarea unei operații sau a unui context.

În biblioteca standard, pachetul context este folosit pentru a gestiona timpul de execuție și pentru a anula operațiile. Contextul poate avea un deadline — un moment după care operația este considerată expirat și trebuie anulată.

Exemplu de creare a unui context cu un deadline:

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

select {
case <-time.After(3 * time.Second):
    fmt.Println("Operație finalizată")
case <-ctx.Done():
    fmt.Println("Deadline a expirat sau contextul a fost anulat")
}

Astfel, deadline-ul este o modalitate de a seta o restricție de timp pentru operații, pentru a evita așteptările infinite.