Packed RPC Streams

Each RPC is asynchronous. The delivery order of RPCs is guaranteed to be the same as the order in which they were issued from an individual workstation.

This means that there is no guarantee that if workstation A issues an RPC to workstation C moments before workstation B issues an RPC to workstation C, that the two RPCs will arrive at C in the order A, then B. You can be assured however, that if workstation A issues RPC1 and then RPC2 to workstation C, then workstation C will receive and process RPC1 before RPC2.

Where there is a need to ensure that a sequence of RPCs issued by workstation A is either executed in its entirety by workstation B, regardless of communication interruptions, or that there is a need to ensure that the sequence of RPCs cannot be interposed by RPCs from another workstation, the sequence of RPCs can be "packed" into a stream. This is done using the RPC Manager method PackRPC.

The stream, so obtained, is then used as a parameter to a remote RunPack RPC, a method also provided by RPC Manager. This facility is commonly used to store a sequence of RPCs that will create a copy of a services synchronizable state on a remote workstation.