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


SelectMode Перечисление

Определение

Определяет режимы опроса для метода Poll(Int32, SelectMode).

public enum class SelectMode
public enum SelectMode
type SelectMode = 
Public Enum SelectMode
Наследование
SelectMode

Поля

SelectError 2

Режим состояния ошибки.

SelectRead 0

Режим состояния чтения.

SelectWrite 1

Режим состояния записи.

Примеры

В следующем примере проверяется состояние объекта , Socket используя все три SelectMode значения перечисления. Вызов метода с Socket.Poll использованием значения перечисления SelectWrite должен возвращать true.

//Creates the Socket for sending data over TCP.
Socket^ s = gcnew Socket( AddressFamily::InterNetwork, SocketType::Stream,
   ProtocolType::Tcp );

// Connects to host using IPEndPoint.
s->Connect( EPhost );
if ( !s->Connected )
{
   strRetPage = "Unable to connect to host";
}
// Use the SelectWrite enumeration to obtain Socket status.
if ( s->Poll( -1, SelectMode::SelectWrite ) )
{
   Console::WriteLine( "This Socket is writable." );
}
else if ( s->Poll(  -1, SelectMode::SelectRead ) )
{
   Console::WriteLine( "This Socket is readable." );
}
else if ( s->Poll(  -1, SelectMode::SelectError ) )
{
   Console::WriteLine( "This Socket has an error." );
}
//Creates the Socket for sending data over TCP.
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream,
   ProtocolType.Tcp );

// Connects to host using IPEndPoint.
s.Connect(EPhost);
if (!s.Connected)
{
   strRetPage = "Unable to connect to host";
}
// Use the SelectWrite enumeration to obtain Socket status.
 if(s.Poll(-1, SelectMode.SelectWrite)){
      Console.WriteLine("This Socket is writable.");
 }
 else if (s.Poll(-1, SelectMode.SelectRead)){
       Console.WriteLine("This Socket is readable." );
 }
 else if (s.Poll(-1, SelectMode.SelectError)){
      Console.WriteLine("This Socket has an error.");
 }
'Creates the Socket for sending data over TCP.
Dim s As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)

' Connects to host using IPEndPoint.
s.Connect(EPhost)
If Not s.Connected Then
   strRetPage = "Unable to connect to host"
End If
' Use the SelectWrite enumeration to obtain Socket status.
If s.Poll(- 1, SelectMode.SelectWrite) Then
   Console.WriteLine("This Socket is writable.")
Else
   If s.Poll(- 1, SelectMode.SelectRead) Then
      Console.WriteLine(("This Socket is readable. "))
   Else
      If s.Poll(- 1, SelectMode.SelectError) Then
         Console.WriteLine("This Socket has an error.")
      End If
   End If 
End If

Комментарии

Перечисление SelectMode определяет режимы опроса, которые можно передать в Socket.Poll метод . Используйте значение SelectRead, чтобы определить, есть ли в прослушивании Socket входящие запросы на подключение. Используйте значение SelectWrite для определения Socket возможности записи. Используйте значение SelectError, чтобы определить наличие условия ошибки в Socket. Объяснения возможности записи, удобочитаемости и наличия условий ошибок см. в методе Socket.Poll .

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

См. также раздел