Lock Service
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
قفل
تسمح هذه الخدمة للنصوص البرمجية بمنع الوصول المتزامن إلى أقسام من الرمز. يمكن أن يكون ذلك مفيدًا عندما يكون لديك عدة مستخدمين أو عمليات تعدّل موردًا مشتركًا وتريد منع حدوث تعارضات.
الدروس
| الاسم | وصف قصير |
Lock | تمثيل لقفل استبعاد متبادل |
LockService | يمنع الوصول المتزامن إلى أجزاء من الرمز. |
الطُرق
| الطريقة | نوع القيمة التي يتم إرجاعها | وصف قصير |
hasLock() | Boolean | تعرِض هذه الطريقة القيمة "صحيح" إذا تم الحصول على القفل. |
releaseLock() | void | يؤدي ذلك إلى إلغاء التأمين، ما يسمح للعمليات الأخرى التي تنتظر التأمين بالمتابعة. |
tryLock(timeoutInMillis) | Boolean | محاولات الحصول على القفل، مع انتهاء المهلة بعد عدد المللي ثانية المحدّد |
waitLock(timeoutInMillis) | void | محاولات الحصول على القفل، مع انتهاء المهلة وظهور استثناء بعد عدد الملّي ثانية المحدّد |
الطُرق
| الطريقة | نوع القيمة التي يتم إرجاعها | وصف قصير |
getDocumentLock() | Lock|null | يحصل على قفل يمنع أي مستخدم للمستند الحالي من تنفيذ جزء من الرمز بشكل متزامن. |
getScriptLock() | Lock | يحصل على قفل يمنع أي مستخدم من تشغيل جزء من الرمز بشكل متزامن. |
getUserLock() | Lock | يحصل على قفل يمنع المستخدم الحالي من تشغيل جزء من الرمز بشكل متزامن. |
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-12-11 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-12-11 (حسب التوقيت العالمي المتفَّق عليه)"],[],["The service provides a mechanism to prevent concurrent code access, crucial for shared resource modification. `LockService` offers methods like `getDocumentLock`, `getScriptLock`, and `getUserLock` to acquire different types of locks. The `Lock` class manages the lock itself, with methods like `hasLock` to check if a lock has been obtained, `releaseLock` to release it, and `tryLock` and `waitLock` to acquire a lock with a timeout.\n"]]