On Sun, 01 Oct 2006 13:18:13 -0400, Travis Cross travis@travislists.com wrote:
After killing the workers, STOP-SERVER tries to PROCESS-KILL the main listener. The main listener though, as returned in the object from START-SERVER, is actually a socket, not a thread.
This is the case because START-UP-SERVER in port-sbcl.lisp returns a socket when START-SERVER is expecting a thread.
The attached patch remedies this, as also takes care of closing the socket when the thread dies.
Ah, yes, thanks. I had this in mind for a second, but it somehow managed to slip through. Seems like I never stopped the damn thing when testing it... :)
Is there a guarantee in SBCL that the cleanup forms of an UNWIND-PROTECT are executed when a thread is killed?