Remote procedure handles
- Last Updated: March 30, 2020
- 1 minute read
- OpenEdge
- Version 12.2
- Documentation
When an ABL client application executes a remote procedure, two procedure
handles are created: one within the client application session and another separate
handle within the server session where the procedure runs. OpenEdge internally maintains
a mapping between the two handles. The handle within the client application is a proxy procedure handle, and its PROXY attribute is set to TRUE. The
handle's PERSISTENT, SINGLE-RUN, or SINGLETON attribute is set
to TRUE for a persistent, single-run, or singleton
procedure, respectively. The corresponding handle within the server session is a remote procedure handle, and its REMOTE attribute is set to TRUE. As with
the proxy handle, the PERSISTENT, SINGLE-RUN, or SINGLETON
attribute is set to TRUE for a persistent,
single-run, or singleton procedure, respectively.
Unlike the values of procedure handles and the THIS-PROCEDURE handle that
reference the same local procedure context, the proxy procedure handle and the remote
procedure handle are truly separate handles. For example, setting the
PRIVATE-DATA attribute on a remote procedure handle has no effect on the
PRIVATE-DATA attribute of the corresponding proxy procedure handle in the
client application.
For more information on the relationship between remote and proxy procedure handles, see the information on procedure handles in Design and Implementation Considerations.