Как два процесса прослушивают один и тот же порт в Windows 7?

Я запускаю два экземпляра stunnel в Windows 7, настроенных на прослушивание одного и того же порта, и кажется, что они оба успешно прослушивают один и тот же порт (просто используя socket () / bind () / listen ()). Оба экземпляра успешно работают со всеми вызовами, и они отображаются в netstat:

C:\>netstat -ano | grep 8000
  TCP    0.0.0.0:8000           0.0.0.0:0              LISTENING       5828
  TCP    0.0.0.0:8000           0.0.0.0:0              LISTENING       5852

Первый, кто прослушает, получит все входящие запросы.

Это в значительной степени противоречит всем моим ожиданиям. (Я ожидал, что EADDRINUSE скажет мне, что порт занят.) Итак ...

Why/How does this work? Is this behavior useful in some context? I don't want an instance to successful run if another application is going to catch the incoming requests... How do I make the port exclusive?

Ответы на вопрос(1)

Ваш ответ на вопрос