Почему в Python неправильно связывается сокет?

Я написал несколько привязок Python для сторонней библиотеки, написанной на C++. Когда я использую библиотеку в Python, она отправляет данные по сети, но ничего не получает (как в C++). Если я запускаю одну и ту же тестовую программу в двух разных процессах C++, она падает, потому что они оба пытаются привязать сокет к одному и тому же порту.

Но когда я запускаю версию Python вместе с версией C++, этого не происходит, что наводит меня на мысль, что версия Python неправильно связывает сокет. Все те же функции C++ вызываются кодом Python.

Тем не менее, код Python действительно получает ошибку привязки сокета при запуске дважды в одно и то же время. Я проверил, что переменные порта и адреса одинаковы в Python и C++, поэтому они не должны привязываться к разным адресам. Кто-нибудь может дать мне представление о том, что может происходить здесь?

0 ответов

Другие вопросы по тегам