Skip to main content

HS.Util.Scoped.LockedId

class HS.Util.Scoped.LockedId extends %Library.RegisteredObject

On Construction, this object attempts to acquire a lock. If the lock could not be acquired within 'timeoutSec' seconds, then an exception is thrown. Otherwise, the lock is held until either:
a) The Release method is called, or
b) the object goes out of scope (is destroyed).

Property Inventory

Method Inventory

Properties

property IsLocked as %Boolean [ Calculated ];
Property methods: IsLockedDisplayToLogical(), IsLockedGet(), IsLockedIsValid(), IsLockedLogicalToDisplay(), IsLockedNormalize()

Methods

method %OnNew(pPersistentClassname As %String, pId As %String, pShared=0, pTimeoutSec As %Integer, pThrowOnTimeout=0) as %Status
Inherited description: This callback method is invoked by the %New() method to provide notification that a new instance of an object is being created.

If this method returns an error then the object will not be created.

It is passed the arguments provided in the %New call. When customizing this method, override the arguments with whatever variables and types you expect to receive from %New(). For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:

Method %OnNew(dob as %Date = "", name as %Name = "") as %Status If instead of returning a %Status code this returns an oref and this oref is a subclass of the current class then this oref will be the one returned to the caller of %New method.

method IsLockedGet() as %Boolean
method Release()
Explicitly releases the lock acquried when this object was constructed. If not explicitly called, the lock will be released when this object is destroyed.

Inherited Members

Inherited Methods

FeedbackOpens in a new tab