Я использую IPGlobalProperties.GetActiveTcpConnections для поиска открытых соединений.
Теперь, когда я их нашел, мне нужно закрыть определенное TCP-соединение.
Проблема в том, что мы подключаюсь к устройству по TCP, но если программа выдает ошибку, то до этапа отключения не доходит (т.е. вылетает). Поскольку устройство может обрабатывать только 5 открытых соединений после 5-го соединения, оно отклоняет дальнейшие попытки подключения, пока устройство не будет физически перезагружено. Чтобы избежать физической перезагрузки, я хочу программно найти открытые соединения и закрыть их перед попыткой установить новое соединение.
Я не могу найти ничего, что связано с моей проблемой.
поскольку этот код огромен, и у меня есть несколько инструментов, добавление тесной связи к каждому улову попытки практически невозможно, и поскольку возникают некоторые ошибки, когда улов попытки не используется, это никак не сработает
Вот код, который я использовал, чтобы найти инструмент
public static void ShowActiveTcpConnections()
{
Console.WriteLine("Active TCP Connections");
IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties();
TcpConnectionInformation[] connections = properties.GetActiveTcpConnections();
foreach (TcpConnectionInformation c in connections)
{
Console.WriteLine(c.RemoteEndPoint.ToString());
}
}
Подробнее здесь: https://stackoverflow.com/questions/788 ... connection
Попытка закрыть открытое TCP-соединение ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение