Sobes.tech
Junior — Middle

Какви допълнителни функции и методи бяха въведени в пакета за контекст в изданието Go 1.21?

sobes.tech AI

Отговор от AI

В версия Go 1.21 бяха добавени няколко нови функции и методи в пакета context, насочени към подобряване на работата с контексти и управлението на жизнения цикъл на операциите.

Основните нововъведения включват:

  • Функции за лесно създаване на контексти с таймаути и крайни срокове.
  • Методи за по-гъвкаво управление на отменянето на контекста и предаването на стойности.
  • Подобрения в производителността и сигурността при работа с контексти.

Например, беше въведена функцията context.WithDeadlineFunc, която позволява да се зададе функция, извиквана при достигане на крайния срок.

ctx, cancel := context.WithDeadlineFunc(parentCtx, deadline, func() {
    fmt.Println("Достигнат е крайният срок")
})
defer cancel()

Тези допълнения правят работата с контексти по-удобна и позволяват по-добър контрол върху жизнения цикъл на операциите в приложенията на Go.