asyncore.dispatcher.set_reuse_addr() uses socket.SO_REUSEADDR to allow reuse of same address without having to wait. On windows this also allows multiple programs to bind to the same socket adress. What is probably needed is to use SO_EXCLUSIVEADDRUSE on windows which has the same meaning as SO_REUSEADDR on all other platforms. This will stop people running the server multiple times and getting wierd results or two programs sharing the same port without realising.
Logged In: YES user_id=11375 SO_EXCLUSIVEADDRUSE actually has quite different semantics from what SO_REUSEADDR is intended to be; backing out this change.
Logged In: YES user_id=31435 Noting that the patch broke the test suite for ZEO (Zope's networked-database layer on top of ZODB) on Windows. That all worked again after Andrew backed out the patch.