Прочитать на английском

Поделиться через


PingReply.RoundtripTime Свойство

Определение

Возвращает число миллисекунд, затраченное на отправку запроса проверки связи по протоколу ICMP и получение соответствующего сообщения с ответом проверки связи по протоколу ICMP.

public long RoundtripTime { get; }

Значение свойства

Значение Int64, указывающее время кругового пути в миллисекундах.

Примеры

Следующий пример кода синхронно отправляет эхо-запрос ICMP и отображает размер буфера, возвращаемого этим свойством.

public static void ComplexPing ()
{
    Ping pingSender = new Ping ();

    // Create a buffer of 32 bytes of data to be transmitted.
    string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
    byte[] buffer = Encoding.ASCII.GetBytes (data);

    // Wait 10 seconds for a reply.
    int timeout = 10000;

    // Set options for transmission:
    // The data can go through 64 gateways or routers
    // before it is destroyed, and the data packet
    // cannot be fragmented.
    PingOptions options = new PingOptions (64, true);

    // Send the request.
    PingReply reply = pingSender.Send ("www.contoso.com", timeout, buffer, options);

    if (reply.Status == IPStatus.Success)
    {
        Console.WriteLine ("Address: {0}", reply.Address.ToString ());
        Console.WriteLine ("RoundTrip time: {0}", reply.RoundtripTime);
        Console.WriteLine ("Time to live: {0}", reply.Options.Ttl);
        Console.WriteLine ("Don't fragment: {0}", reply.Options.DontFragment);
        Console.WriteLine ("Buffer size: {0}", reply.Buffer.Length);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

Комментарии

Если запрос Echo завершается сбоем RoundtripTime , время указывается как 0, что также является допустимым значением при успешном выполнении запроса. Необходимо проверка , Status чтобы определить, следует ли игнорировать значение, возвращаемое этим свойством.

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1