У меня есть установка сервера SCPI на ПК с Win7 и две другие программы, которые общаются с ним локально (127.0.0.1) через сокеты TCPIP 5025 и 5029.
Это работало хорошо и стабильно на новом ПК, но когда мы переместили его на наши производственные линии, а ИТ-отдел добавили свои политики и прочее, он стал нестабильным. ПК подключен к производственному серверу, но обе программы работают локально на ПК.
Во время простоя соединение имеет тенденцию отключаться. И нужно 5-6 раз обновить соединение, чтобы вернуть его.
Я сам не программист, поэтому надеюсь увидеть, сможет ли кто-нибудь помочь с некоторыми ответами.
Большое спасибо!!
С уважением, KwanWee.
Что касается проблемы с тайм-аутом, вам, вероятно, потребуется либо получить помощь ИТ-специалистов в удалении политики, которая приводит к закрытию соединения, либо обойти ее, убедившись, что ссылка не простаивает достаточно долго до тайм-аута. Например, вы можете периодически выполнять команду, которая не должна иметь никакого эффекта, например * IDN? или опрос некоторого регистра ошибок (я забываю, если они ясны при чтении; если они это сделают, вам придется использовать значение в своей программе)
Что касается проблемы повторного подключения, продолжает ли ваш серверный процесс работать, и использует ли тот же прослушивающий сокет для приема повторных подключений? В противном случае - если вы привязываете новый сокет (или перезапускаете программу) - ваша проблема может заключаться в отказе установить SO_REUSADDR на сокете.