Class LockService

LockService

يمنع الوصول المتزامن إلى أجزاء من الرمز. ويمكن أن يكون ذلك مفيدًا عندما يكون لديك عدة مستخدمين أو عمليات تعدّل موردًا مشتركًا وتريد منع حدوث تعارضات.

الطُرق

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

مستندات تفصيلية

getDocumentLock()

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

الإرجاع

Lock|null — قفل محدد النطاق للنص البرمجي والمستند الحالي، أو null إذا تم استدعاؤه من نص برمجي مستقل أو تطبيق ويب


getScriptLock()

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

الإرجاع

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


getUserLock()

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

الإرجاع

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