Отправка Pings увеличивает использование памяти с течением времени
У меня есть сетевая программа для мониторинга некоторых контроллеров со статическим IP. В моей программе есть список этих IP-адресов, и я периодически проверяю все эти адреса, используя таймер, чтобы проверить, не отключились ли некоторые контроллеры.
Через несколько дней программа зависает, процессор на 100%. При пропуске отправки пингов программа работает нормально. Теперь я обнаружил, что после каждой процедуры отправки программа добавляет несколько K к использованию памяти. Так должно быть что-то не так в моей процедуре пинга?
Ping pgCheck = new Ping();
try
{
stStatus = pgCheck.Send(arData[i, 6], 900000).Status.ToString();
}
catch
{
//Ping failed, write it to log...
}
finally
{
pgCheck.Dispose();
GC.Collect();
GC.WaitForPendingFinalizers();
}