[Openmcl-devel] I made simple swank helper.

Fabrice Popineau fabrice.popineau at gmail.com
Mon May 16 12:57:21 PDT 2016

2016-05-16 21:10 GMT+02:00 Gary Byers <gb at clozure.com>:

> Note that swank-helper uses the "select" system call which tries to wait
> until
> some members of some sets of Unix file descriptors are ready to do some
> kinds of I/O
> Some Windows C libraries may try to emulate some parts of what select
> tries to
> do, but IIRC CCL on Windows mostly tries to do I/O without involving any C
> libraries.
> The closest Windows analogue to select() might be WaitForMultipleObjects,
> and I don't
> believe that you can generally wait for Windows file handles unless you
> know a lot
> about what I/O operations are awaiting completion on that handle.
> More generally, if swank-helper doesn't work on Windows, that is not
> surprising.
> I don't know whether or not it could be made to work on Windows, or what
> would
> be involved in that.
In swank-helper/serve-event function, there is this call to  #_select that
I suppose will be resolved to the select() function
from winsock2. The main difference between this select() and the Unix one
is that the Unix one works with
both network sockets and file sockets whereas it does work only on network
sockets for Windows (IIRC).

When I tried swank-helper, it went into a loop consuming 100% CPU.

BTW, from what I tried, neither slime + repl nor sly are able to reuse the
same thread for C-x C-e.
Several calls in a row on (random 100) always return the same value for
both, at least under Windows.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20160516/3166175d/attachment.htm>

More information about the Openmcl-devel mailing list