Моделируем ситуацию: КП типа СПТ943 с «пустым методом SendCmd»:
public override void SendCmd(Command cmd)
{
}
597 Линий связи, на каждой линии 1 КП типа СПТ943.
Что делаем: запускаем разом все команды КП
И в итоге ScadaCommSvc.exe — отъедает 20Gb оперативной памяти из 24 возможных. Однако само приложение и сервис не виснет, и через некоторое время память освобождается, однако в пиковый момент сервер перестает отвечать на запросы.
Дело в потоках.
` commandReader = new CommandReader(this);
commandReader.StartThread();`
Судя по дебагу, именно на этом этапе память лавинообразно заполняется.
Есть ли какие мысли?