The function set-remote-debugging-connection
sets an enabling switch controlling which remote debugging connection will be used by the remote debugging interface (entering the debugger, start-remote-listener or remote-inspect) on the client side.
If connection is t
, then the default connection will be used (which may be set by set-default-remote-debugging-connection, start-client-remote-debugging-server, or configure-remote-debugging-spec). If connection is an instance of client-remote-debugging, then connection itself will be used. If connection is nil
, then no connection is specified (the API may open one when needed).
The setting is global, unless it is called within the dynamic extent of with-remote-debugging-connection, in which case its effects last until the exit from this extent.
When entering the debugger, the connection is used when invoke-debugger
is called and no hook blocks it. Possible hooks include *debugger-hook*
and with-debugger-wrapper. For the Remote Listener and Inspector, the functions start-remote-listener and remote-inspect use the connection.
In typical usage, you will not need to explicitly call set-default-remote-debugging-connection, because start-client-remote-debugging-server and configure-remote-debugging-spec (with the default parameters) both set the default connection.
In all cases, if the debugger is invoked and there is no connection to use, LispWorks may open a connection if it was configured to do so by configure-remote-debugging-spec or with-remote-debugging-spec.
You can obtain a client remote debugging connection by using the :open-callback
keyword with start-client-remote-debugging-server or configure-remote-debugging-spec.
with-remote-debugging-connection
set-default-remote-debugging-connection
start-client-remote-debugging-server
configure-remote-debugging-spec
Remote debugging
LispWorks User Guide and Reference Manual - 20 Sep 2017