AutoLockRenewer Sınıf
Yenilemeyi otomatik olarak kilitle.
arka planda iletilerin ve/veya oturumların kilit belirteçlerini yenilemek için zaman uyumsuz bir AutoLockRenewer işleyicisi.
- Devralma
-
builtins.objectAutoLockRenewer
Oluşturucu
AutoLockRenewer(max_lock_renewal_duration: float = 300, on_lock_renew_failure: Callable[[ServiceBusSession | ServiceBusReceivedMessage, Exception | None], Awaitable[None]] | None = None, loop: AbstractEventLoop | None = None)
Parametreler
Name | Description |
---|---|
max_lock_renewal_duration
|
Bu yenileyiciye kaydedilen kilitlerin korunacağı saniye olarak bir süre. Varsayılan değer 300'dür (5 dakika). Default value: 300
|
on_lock_renew_failure
|
Optional[<xref:LockRenewFailureCallback>]
Kayıtlı olan yenilenebilir kaynakta kilit kaybolduğunda çağrılmak üzere bir geri arama belirtilebilir. Varsayılan değer Yok 'tur (geri çağırma yoktur). Default value: None
|
loop
|
Default value: None
|
Örnekler
İleti kilidini otomatik olarak yenileme
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)
Oturum kilidini otomatik olarak yenileme
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)
Yöntemler
close |
Kalan açık kilit yenileme geleceklerini iptal ederek otomatik yenilemeyi sonlandır. |
register |
Otomatik kilit yenilemesi için yenilenebilir bir varlık kaydedin. |
close
Kalan açık kilit yenileme geleceklerini iptal ederek otomatik yenilemeyi sonlandır.
async close() -> None
register
Otomatik kilit yenilemesi için yenilenebilir bir varlık kaydedin.
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
Parametreler
Name | Description |
---|---|
receiver
Gerekli
|
İletiyle ilişkili ServiceBusReceiver örneği veya otomatik olarak kilitlenen oturum yenilenecek. |
renewable
Gerekli
|
Union[<xref:azure.servicebus.aio.ServiceBusReceivedMessage>,ServiceBusSession]
Yenilenmesi gereken kilitli bir varlık. |
max_lock_renewal_duration
|
Kilidin korunması gereken saniye olarak bir süre. Varsayılan değer Yok'tur. Belirtilirse, bu değer oluşturucuda belirtilen varsayılan değeri geçersiz kılar. Default value: None
|
on_lock_renew_failure
|
Optional[<xref:AsyncLockRenewFailureCallback>]
Kayıtlı yenilenebilir öğede kilit kaybolduğunda çağrılmak üzere zaman uyumsuz bir geri çağırma belirtilebilir. Varsayılan değer Yok 'tur (geri çağırma yoktur). :rtype: Yok Default value: None
|
Azure SDK for Python