AutoLockRenewer Klasa

Automatyczne odnawianie blokady.

Asynchroniczna procedura obsługi funkcji AutoLockRenewer do odnawiania tokenów blokady komunikatów i/lub sesji w tle.

Dziedziczenie
builtins.object
AutoLockRenewer

Konstruktor

AutoLockRenewer(max_lock_renewal_duration: float = 300, on_lock_renew_failure: Callable[[ServiceBusSession | ServiceBusReceivedMessage, Exception | None], Awaitable[None]] | None = None, loop: AbstractEventLoop | None = None)

Parametry

Nazwa Opis
max_lock_renewal_duration

Czas w sekundach, dla którego należy zachować blokadę zarejestrowaną w tym module odnawiania. Wartość domyślna to 300 (5 minut).

wartość domyślna: 300
on_lock_renew_failure
Optional[<xref:LockRenewFailureCallback>]

Można określić wywołanie zwrotne, które ma być wywoływane, gdy blokada zostanie utracona podczas rejestrowania odnawialnej. Wartość domyślna to None (brak wywołania zwrotnego).

wartość domyślna: None
loop
wartość domyślna: None

Przykłady

Automatyczne odnawianie blokady wiadomości


   from azure.servicebus.aio import AutoLockRenewer

   lock_renewal = AutoLockRenewer()
   async with servicebus_receiver:
       async for message in servicebus_receiver:
           lock_renewal.register(servicebus_receiver, message, max_lock_renewal_duration=60)
           await process_message(message)
           await servicebus_receiver.complete_message(message)

Automatyczne odnawianie blokady sesji


       from azure.servicebus.aio import AutoLockRenewer

       lock_renewal = AutoLockRenewer()
       async with servicebus_client.get_queue_receiver(queue_name=queue_name, session_id=session_id) as receiver:
           session = receiver.session
           # Auto renew session lock for 2 minutes
           lock_renewal.register(receiver, session, max_lock_renewal_duration=120)
           async for message in receiver:
               await process_message(message)
               await receiver.complete_message(message)

Metody

close

Zatrzymaj autorenewal, anuluj wszelkie pozostałe kontrakty na odnawianie blokady otwarte.

register

Zarejestruj jednostkę odnawialną na potrzeby automatycznego odnawiania blokady.

close

Zatrzymaj autorenewal, anuluj wszelkie pozostałe kontrakty na odnawianie blokady otwarte.

async close() -> None

register

Zarejestruj jednostkę odnawialną na potrzeby automatycznego odnawiania blokady.

register(receiver: ServiceBusReceiver, renewable: ServiceBusReceivedMessage | ServiceBusSession, max_lock_renewal_duration: float | None = None, on_lock_renew_failure: Callable[[ServiceBusSession | ServiceBusReceivedMessage, Exception | None], Awaitable[None]] | None = None) -> None

Parametry

Nazwa Opis
receiver
Wymagane

Wystąpienie ServiceBusReceiver skojarzone z komunikatem lub sesją do automatycznego odnawiania.

renewable
Wymagane
Union[<xref:azure.servicebus.aio.ServiceBusReceivedMessage>,ServiceBusSession]

Zablokowana jednostka, która musi zostać odnowiona.

max_lock_renewal_duration

Czas w sekundach, dla którego należy zachować blokadę. Wartość domyślna to Brak. Jeśli zostanie określona, ta wartość zastąpi wartość domyślną określoną w konstruktorze.

wartość domyślna: None
on_lock_renew_failure
Optional[<xref:AsyncLockRenewFailureCallback>]

Można określić wywołanie zwrotne asynchroniczne, które ma być wywoływane, gdy blokada zostanie utracona podczas rejestrowania odnawialnej. Wartość domyślna to None (brak wywołania zwrotnego). :rtype: Brak

wartość domyślna: None