Сообщить об ошибке.

Объект Token() модуля contextvars в Python

Синтаксис:

import contextvars

contextvars.Token

# получение токена
var = contextvars.ContextVar('var')
token = var.set('new_value')

Параметры:

  • нет.

Описание:

Объекты токенов Token модуля contextvars создаются методом ContextVar.set().

Объект токена можно передать в метод ContextVar.reset(), чтобы вернуть значение переменной к тому значению, что было до вызова метода ContextVar.set().

Атрибуты объекта Token.

Token.var:

Атрибут Token.var только для чтения. Указывает на объект ContextVar, создавший токен.

Token.old_value:

Атрибут Token.old_value только для чтения. Возвращает значение, которое переменная имела до вызова метода ContextVar.set(), создавшего токен. Он указывает на маркер Token.MISSING.

Token.MISSING:

Объект маркера Token.MISSING, используется атрибутом Token.old_value.

Примеры использования объекта Token:

var = ContextVar('var')

token = var.set('new_value')
...
# здесь будет код, использующий 'var'; 
# метод var.get() возвращает 'new_value'.
...
var.reset(token)

# После вызова var.reset(), переменная 'var' не будет 
#  иметь значения, т.к. задана только в контексте
# а вызов var.get() вызовет `LookupError`.