Мне действительно нравится эта функция, но я не уверен в этом, есть ли другой, более эффективный способ сделать это?
Эта функция дает мне один и тот же пинг в других играх (ну, редко до 0 ~ 30 мс, что неправильно). Как и в Pubg Europe Server - 89 мс, эта функция возвращает 70 ~ 110 мс, если я подключил ее к европейскому серверу загрузки.
// Method To Calculate Internet Ping
static int GetPing()
{
try
{
WebClient ping = new WebClient();
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
ping.DownloadFileAsync(new Uri(Server), Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\test10Gb.db");
stopwatch.Stop();
ping.CancelAsync();
ping.Dispose();
GC.Collect();
return int.Parse(stopwatch.ElapsedMilliseconds.ToString());
}
catch (Exception) { }
return -1;
}