[Openmcl-devel] Named Processes
Sven Van Caekenberghe
sven at beta9.be
Wed Nov 20 12:11:35 EST 2002
I am sure Gary could answer this question better, but since I just had
the same problem I'll give it a try ;-)
The reason your process needs access to terminal input is most probably
because your process' code threw an error (condition) that is being
handled by the toplevel debugger, which in general will ask you what to
do (how to continue), hence needs terminal input. Another possible
reason is that your own code does a (read).
If you want to see what's going on, do a (:y <name>) to transfer
control to the process wanting access to terminal input.
To prevent this behavior to errors, implement your own handler using
#'handler-read. This is an example from some testing code that I wrote:
(defun network-time-server (&key (port *port*) (verbose nil))
"Start a network time server."
(process-run-function (format nil "network-time-server:~d" port)
(defun network-time-server-core (port verbose)
"The actual network time server core loop: accepting connections."
(handler-bind ((error #'(lambda (c)
(format t "network time server failed with ~a~%" c)
(return-from network-time-server-core nil))))
(with-open-socket (server-socket :connect :passive
(format t "network time server ~a:~d ready~%"
(ipaddr-to-dotted (local-host server-socket))
(do ((client-socket (accept-connection server-socket)
(format t "accepted connection from ~a~%"
(ipaddr-to-dotted (remote-host client-socket))))
(let ((id (incf *counter*)))
(process-run-function (format nil "network-time-request-handler-~d"
Simply printing the error and returning from your process' run function
will end the process.
On Wednesday, November 20, 2002, at 05:53 PM, Marco Antoniotti wrote:
> Yep. I use that. However, my process seem to block saying
> ;; Process <name> needs access to terminal input.
> How do I suppress this behavior? I tried
> (process-run-function <name> '(:input nil) #'procfun)
> to no avail.
> Would this be the correct way to produce that effect?
Sven Van Caekenberghe - mailto:sven at beta9.be
Beta Nine - software engineering - http://www.beta9.be
.Mac - svc at mac.com - http://homepage.mac.com/svc
Openmcl-devel mailing list
Openmcl-devel at clozure.com
More information about the Openmcl-devel