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


TcpListener.ExclusiveAddressUse Свойство

Определение

Возвращает или задает значение Boolean, указывающее, позволяет ли объект TcpListener осуществлять ожидание передачи данных только на одном основном сокете на указанном порту.

public:
 property bool ExclusiveAddressUse { bool get(); void set(bool value); };
public bool ExclusiveAddressUse { get; set; }
member this.ExclusiveAddressUse : bool with get, set
Public Property ExclusiveAddressUse As Boolean

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

Значение true, если объект TcpListener разрешает осуществлять ожидание передачи данных только на одном объекте TcpListener на указанном порту; в противном случае — значение false. По умолчанию используется значение true для Windows Server 2003 и Windows XP с пакетом обновления 2 (SP2) и более поздней версии; для всех остальных версий по умолчанию используется значение false.

Исключения

Объект TcpListener запущен. Вызовите метод Stop(), а затем задайте свойство ExclusiveAddressUse.

Произошла ошибка при попытке доступа к основному сокету.

Основной объект Socket закрыт.

Примеры

В следующем примере кода возвращается и задается ExclusiveAddressUse свойство .

public:
    static void GetSetExclusiveAddressUse(TcpListener^ listener)
    {
        // Set Exclusive Address Use for the underlying socket.
        listener->ExclusiveAddressUse = true;
        Console::WriteLine("ExclusiveAddressUse value is {0}",
            listener->ExclusiveAddressUse);
    }
public static void GetSetExclusiveAddressUse(TcpListener t)
{
    // Set Exclusive Address Use for the underlying socket.
    t.ExclusiveAddressUse = true;
    Console.WriteLine("ExclusiveAddressUse value is {0}",
        t.ExclusiveAddressUse);
}
Public Shared Sub GetSetExclusiveAddressUse(t As TcpListener)
   ' Set Exclusive Address Use for the underlying socket.
   t.ExclusiveAddressUse = True
   Console.WriteLine("ExclusiveAddressUse value is {0}", t.ExclusiveAddressUse)
End Sub

Комментарии

По умолчанию несколько прослушивателей могут прослушивать определенный порт. Однако только один из прослушивателей может выполнять операции с сетевым трафиком, отправленным на порт. Если несколько прослушивателя пытаются выполнить привязку к определенному порту, то тот, у кого более конкретный IP-адрес, обрабатывает сетевой трафик, отправляемый на этот порт. Свойство можно использовать, ExclusiveAddressUse чтобы запретить прослушивание несколькими прослушивателями определенного порта.

Задайте это свойство перед вызовом Startили вызовите Stop метод , а затем задайте это свойство.

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