мой вопрос в основном об оптимизации кода (на данный момент)
Я создал сетевой монитор, который контролирует различные соединения на ПК. Я сделал анализ пакетов на 3-м уровне стека (на сетевом уровне), после захвата пакета я должен создать объект на Пользовательский интерфейс для каждого соединения, то, что я делаю в данный момент, смотрит на общую потребляемую пропускную способность и общее количество данных, отправляемых каждую секунду, когда запускается программа. вот эта часть кода:
temp= packet_rtxt.TextLength;
tempdr = temp / 1024;
dr_txt.Text=tempdr.ToString();
totaldata = totaldata + temp;
totaldatadisp = totaldata;
packet_rtxt.Text = "";
//unit
if (totaldata < 10485760)
{
if (totaldata < 10240)
unit.Text = "bytes";
else
{
totaldatadisp = totaldatadisp / 1024;
unit.Text = "KBs";
}
}
else
{
totaldata = totaldatadisp / 1048576;
unit.Text = "MBs";
}
test.Text = totaldatadisp.ToString();
tds.Enabled = true;
}
Итак, что я делаю, так это записываю захваченные пакеты в поле расширенного текста, беря длину этого rtxt и добавляя его к счетчику для общих данных, беря длину и используя ее в качестве скорости передачи данных, затем очистка RTX для следующих битов данных.
часть, получающая общее количество данных, работает нормально, однако секция BPs отлично работает для небольших объемов данных, а затем сходит с ума, если скорость передачи данных превышает 10 Кбит / с (на моем компьютере)
я должен попытаться оптимизировать весь код, или есть какой-то другой метод (имейте в виду, мне нужно контролировать каждое отдельное соединение), или мне нужно использовать различные элементы управления пользовательского интерфейса?
я должен сосредоточиться на оптимизации или использовать новые способы?
спасибо заранее