Calls a function while holding a lock on an object.
This function is exported by the KS module.
Result := LockRun(LockObject, Callback , Params*)
LockObject must be initialized, for example to an empty object or string. Calls using the same lock object execute their callbacks one at a time. The return value is the callback's return value.