Class LockService

LockService

لمنع الوصول المتزامن إلى أقسام الرمز. يمكن أن يكون هذا مفيدًا عندما يكون لديك عدة مستخدمين أو عمليات تعمل على تعديل مورد مشترك وتريد منع التصادمات.

الطُرق

الطريقةنوع القيمة التي يتم إرجاعهاوصف قصير
getDocumentLock()Lockيحصل على قفل يمنع أي مستخدم للمستند الحالي من تشغيل قسم من الرمز بشكل متزامن.
getScriptLock()Lockيحصل على قفل يمنع أي مستخدم من تشغيل قسم من الرمز بشكل متزامن.
getUserLock()Lockيحصل على قفل يمنع المستخدم الحالي من تشغيل قسم من الرمز بشكل متزامن.

الوثائق التفصيلية

getDocumentLock()

يحصل على قفل يمنع أي مستخدم للمستند الحالي من تشغيل قسم من الرمز بشكل متزامن. يمكن تنفيذ قسم من التعليمات البرمجية المحمي بقفل مستند في وقت واحد عن طريق حالات نص برمجي تعمل في سياق مستندات مختلفة، ولكن ليس بأكثر من عملية واحدة لأي مستند محدد. وتجدر الإشارة إلى أنّ القفل لا يتم الحصول عليه إلا بعد استدعاء Lock.tryLock(timeoutInMillis) أو Lock.waitLock(timeoutInMillis). وإذا تم استدعاء هذه الطريقة خارج سياق مستند يتضمّن محتوى (مثلاً من نص برمجي مستقل أو تطبيق ويب)، يتم عرض null.

استرجاع الكرة

Lock: قفل نطاق النص البرمجي والمستند الحالي أو null في حال تم استدعاؤه من نص برمجي أو تطبيق ويب مستقل


getScriptLock()

يحصل على قفل يمنع أي مستخدم من تشغيل قسم من الرمز بشكل متزامن. لا يمكن تنفيذ قسم الرمز المحمي بقفل نص برمجي في وقت واحد بغض النظر عن هوية المستخدم. وتجدر الإشارة إلى أنّه لا يتم الحصول على القفل إلا بعد استدعاء Lock.tryLock(timeoutInMillis) أو Lock.waitLock(timeoutInMillis).

استرجاع الكرة

Lock - قفل نطاق النص البرمجي


getUserLock()

يحصل على قفل يمنع المستخدم الحالي من تشغيل قسم من الرمز بشكل متزامن. يمكن للمستخدمين المختلفين تنفيذ قسم التعليمات البرمجية المحمي بقفل مستخدم في الوقت نفسه، لكن لا يمكن تنفيذ أكثر من عملية تنفيذ واحدة لأي مستخدم. يكون القفل "خاصًا" للمستخدم. وتجدر الإشارة إلى أنّ القفل لا يتم الحصول عليه إلا بعد استدعاء Lock.tryLock(timeoutInMillis) أو Lock.waitLock(timeoutInMillis).

استرجاع الكرة

Lock: قفل نطاق النص البرمجي والمستخدم الحالي