procedure Lock; virtual;
virtual void __fastcall Lock();
Locks the remote data module so that it cannot be locked by other threads.
Remote data modules use Lock internally to ensure that all TRemoteDataModule calls are thread-safe. When implementing a remote data module descendant that supports the free-threading model, call Lock before accessing any instance data, including the providers contained in the data module. When finished with the block of code that must be protected from thread conflicts, call the Unlock method to release the lock.
Lock uses a critical section to guard against thread conflicts. This means that any code that accesses the remote data module's properties or contained objects must call Lock or it will introduce thread conflicts.