TcpClient.ExclusiveAddressUse Właściwość

Definicja

Pobiera lub ustawia wartość, która określa Boolean , czy TcpClient zezwala tylko jednemu klientowi na korzystanie z portu.

public bool ExclusiveAddressUse { get; set; }

Wartość właściwości

true jeśli program TcpClient zezwala tylko jednemu klientowi na korzystanie z określonego portu; w przeciwnym razie false. Wartość domyślna dotyczy true systemów Windows Server 2003 i Windows XP z dodatkiem Service Pack 2 lub nowszym oraz false dla wszystkich innych wersji.

Wyjątki

Wystąpił błąd podczas próby uzyskania dostępu do bazowego gniazda.

Bazowy Socket został zamknięty.

Przykłady

Poniższy przykład kodu tworzy TcpClient element i pobiera i ustawia wartość ExclusiveAddressUse właściwości .

static void GetSetExclusiveAddressUse()
{
    // Don't allow another process to bind to this port.
    t.ExclusiveAddressUse = true;
    Console.WriteLine("ExclusiveAddressUse value is {0}",
        t.ExclusiveAddressUse);
}

Uwagi

Domyślnie wielu klientów może używać określonego portu; jednak tylko jeden z klientów może wykonywać operacje na ruchu sieciowym wysyłanym do portu. Możesz użyć ExclusiveAddressUse właściwości , aby uniemożliwić wielu klientom korzystanie z określonego portu.

Tę właściwość należy ustawić, zanim bazowe gniazdo zostanie powiązane z portem klienta. Jeśli wywołasz Connectmetodę , , BeginConnectTcpClient(IPEndPoint)lub TcpClient(String, Int32), port klienta jest powiązany jako efekt uboczny metody , a następnie nie można ustawić ExclusiveAddressUse właściwości .

Dotyczy

Produkt Wersje
.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 1.3, 1.4, 1.6, 2.0, 2.1