AutoLockRenewer Kelas
Perpanjangan kunci otomatis.
Penangan AutoLockRenewer asinkron untuk memperbarui token kunci pesan dan/atau sesi di latar belakang.
- Warisan
-
builtins.objectAutoLockRenewer
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)
Parameter
Nama | Deskripsi |
---|---|
max_lock_renewal_duration
|
Waktu dalam detik yang mengunci yang terdaftar untuk perpanjangan ini harus dipertahankan. Nilai defaultnya adalah 300 (5 menit). nilai default: 300
|
on_lock_renew_failure
|
Optional[<xref:LockRenewFailureCallback>]
Panggilan balik dapat ditentukan untuk dipanggil ketika kunci hilang pada yang dapat diperbarui yang sedang didaftarkan. Nilai default adalah None (tidak ada panggilan balik). nilai default: None
|
loop
|
nilai default: None
|
Contoh
Memperbarui kunci pesan secara otomatis
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)
Memperbarui kunci sesi secara otomatis
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)
Metode
close |
Hentikan autorenewal dengan membatalkan masa depan perpanjangan kunci terbuka yang tersisa. |
register |
Daftarkan entitas terbarukan untuk perpanjangan kunci otomatis. |
close
Hentikan autorenewal dengan membatalkan masa depan perpanjangan kunci terbuka yang tersisa.
async close() -> None
register
Daftarkan entitas terbarukan untuk perpanjangan kunci otomatis.
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
Parameter
Nama | Deskripsi |
---|---|
receiver
Diperlukan
|
Instans ServiceBusReceiver yang terkait dengan pesan atau sesi yang akan diperbarui secara otomatis. |
renewable
Diperlukan
|
Union[<xref:azure.servicebus.aio.ServiceBusReceivedMessage>,ServiceBusSession]
Entitas terkunci yang perlu diperbarui. |
max_lock_renewal_duration
|
Waktu dalam detik kunci harus dipertahankan. Nilai defaultnya adalah Tidak Ada. Jika ditentukan, nilai ini akan menggantikan nilai default yang ditentukan pada konstruktor. nilai default: None
|
on_lock_renew_failure
|
Optional[<xref:AsyncLockRenewFailureCallback>]
Panggilan balik asinkron dapat ditentukan untuk dipanggil ketika kunci hilang pada pembaruan yang didaftarkan. Nilai default adalah None (tidak ada panggilan balik). :rtype: None nilai default: None
|
Azure SDK for Python
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk