void PostponeOperation( TimeInterval tiPostponeDelay );
Name | Description | |
---|---|---|
in | tiPostponeDelay | Specifies the time to delay before execution. |
Postpones an operation.
To avoid deadlocking of embedded RMCs (Remote Method Calls), you can postpone RMCs when they are not yet ready to execute and call them again a short time later. If messages accumulated in the original RMC are relayed while that RMC is postponed, no other messages will be processed until these messages are processed and the RMC call completes.
Even if the TargetObjectMustBeMaster
or TargetObjectMustHaveAuthority
flag is set in DOCallContext::Flags
, these flags are only guaranteed to represent the correct state the initial time that a method is called. Thus, the flags and the state of the Duplicated Object might diverge if execution is postponed by this function, because the flags are not rechecked. For example, although the TargetObjectMustBeMaster
flag is set, the object may have become a duplica (DuplicatedObject::IsADuplica
) in the meantime.
CONFIDENTIAL