| Allegro CL version 6.2 Unrevised from 6.1 to 6.2. Moderate update since 6.2 release. | |||||||||
The value of this variable identifies the default RPC port in the dynamic environment.
The variable is bound explicitly by the macro with-remote-port.
When an in-bound remote call is evaluated, the dynamic environment binds this variable to the port which received the call.
In user programs, it is unwise to bind or assign a value to this variable, whether by let-binding, lambda-binding, or using setf or setq.
The following information on callbacks and remote calls applies to the
patched version of Allegro CL RPC facility made available after the
release of Allegro CL 6.2. You must have downloaded the relevant patch
(you can do so with update-allegro). If you have downloaded the
patch, this function rpc-version will be defined and the form
(rpc-version) will return (3 2
2) (version 3.2.2) or later.
An out-bound remote call is identified as a callback when the destination port is eq to the default port, and the default port has not been re-bound to some other port in the dynamic environment.
(defun remotely-called-function ()
(let ((in-port *rpc-port*))
(rcall 'foo) ;; this is a callback
(with-remote-port (in-port)
(rcall 'bar) ;; this is a callback
)
(with-remote-port (other-port)
(with-remote-port (in-port)
(rcall 'bar) ;; this is NOT a callback
)
)
(rcall 'bar) ;; this is a callback
))
See also rpc.htm for general information on the Remote Procedure Call utility in Allegro CL.
Copyright (c) 1998-2002, Franz Inc. Oakland, CA., USA. All rights reserved.
Documentation for Allegro CL version 6.2. This page was not revised from the 6.1 page.
Created 2002.2.26.
| Allegro CL version 6.2 Unrevised from 6.1 to 6.2. Moderate update since 6.2 release. | |||||||||