Как можно узнать текущую скорость соединения с интернетом - C#
Формулировка задачи:
Привет.
Как можно узнать текущую скорость соединения с интернетом? (Ну и вывести ее, например, в лэйбл.) Имеется ввиду не пропускную способность соответствующего канала, а скорость использования инета на данный момент.
Решение задачи: «Как можно узнать текущую скорость соединения с интернетом»
textual
Листинг программы
private void InitializeNetworkInterfaces() { PerformanceCounterCategory performanceCounterCategory = new PerformanceCounterCategory("Network Interface"); InstanceDataCollectionCollection data = performanceCounterCategory.ReadCategory(); interfaces = performanceCounterCategory.GetInstanceNames(); int length = interfaces.Length; if (length > 0) { bandwidthTimer.Enabled = true; dataSentCounters = new PerformanceCounter[length]; dataReceivedCounters = new PerformanceCounter[length]; } for (int i = 0; i < length; i++) { dataReceivedCounters[i] = new PerformanceCounter("Network Interface", "Bytes Sent/sec", interfaces[i]); dataSentCounters[i] = new PerformanceCounter("Network Interface", "Bytes Sent/sec", interfaces[i]); } } private void bandwidthTimer_Tick(object sender, EventArgs e) { int length = interfaces.Length; float sendSum = 0; float receiveSum = 0; try { for (int i = 0; i < length; i++) { sendSum += dataSentCounters[i].NextValue(); receiveSum += dataReceivedCounters[i].NextValue(); } } catch (Exception) { bandwidthTimer.Stop(); } decimal used =(decimal) (sendSum + receiveSum)*8/1000; bandwidthUsed.Text = (decimal.Round(used, 1)).ToString(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д