On 6/9/2020 8:11 AM, Jon Zeppieri wrote:
On Tue, Jun 9, 2020 at 7:59 AM Bogdan Popa <bog...@defn.io> wrote:
> I think we'd need to also set `SO_REUSEPORT', which is not available on
> all platforms, to support multiple processes listening on the same port
> without reusing file descriptors.
And even where it is available, it doesn't work the same way. The
Linux version can be used to load balance accept()s across processes,
but the BSD version (also in OS X) cannot. (FreeBSD apparently has a
variant, SO_REUSEPORT_LB, that behaves like the Linux version of
And Windows has 2 options that mean essentially the same thing:
SO_REUSE_UNICASTPORT and SO_PORT_SCALABILITY.
SO_PORT_SCALABILITY was introduced in Windows 7 / Server 2008.
SO_REUSE_UNICASTPORT was introduced in Windows 10.
Whichever port reuse option is supported by the platform, it normally is
set automagically whenever SO_REUSEADDR is specified. Only functions
that require an explicit bind need it to be set manually.
It's clear that enabling the functionality would have to be studied
You received this message because you are subscribed to the Google Groups "Racket
To unsubscribe from this group and stop receiving emails from it, send an email
To view this discussion on the web visit