قيد الاختبار حاليًا: سيتم فتح كود GitHub عند الاكتمال.

T · انتهاء المهلة

البنيةrefresh

تُرسَل عندما يفشل طلب الحصول (A) في الحصول على القفل خلال wait — تخلى الخادم عن المنح دون خطأ (هذا ليس خطأ).

ترميز البايتات: op حرف ASCII، وowner ثنائي (u64، big-endian)، وkey نص UTF-8 (متغير الطول، يُعرض كـ N في البنية). \n الأخير هو 0A. الرأس الثابت قيمة ثنائية قد تحتوي على 0x0A، لذا يجب استهلاكه أولًا حسب عدد البايتات قبل البحث عن سطر جديد.

owner هو القيمة التي أُرسلت في الطلب معادة كما هي كمُعرِّف رابط — يحدد به العميل أي طلب تخصه هذه الاستجابة (قواعد مطابقة الاستجابات).

التدفق

العميل
الخادم
A · حصول (key · wait · lease · owner)
محجوز ← تسجيل في الطابور
لم يحن الدور خلال wait ثانية
T · انتهاء المهلة
أُزيل من الطابور — أرسل A جديدًا لإعادة المحاولة
طلباستجابة

بحلول لحظة وصول T، يكون ذلك الطلب قد أُزيل بالفعل من الطابور، لذا لا يمكن منح القفل له لاحقًا أبدًا. وبما أنه لم يُصدر أي رمز أيضًا، فليس هناك ما يُنظَّف — فقط أعد المحاولة.