SelectMode Wyliczenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Definiuje tryby sondowania dla Poll(Int32, SelectMode) metody .
public enum class SelectMode
public enum SelectMode
type SelectMode =
Public Enum SelectMode
- Dziedziczenie
Pola
SelectError | 2 | Tryb stanu błędu. |
SelectRead | 0 | Tryb stanu odczytu. |
SelectWrite | 1 | Tryb stanu zapisu. |
Przykłady
Poniższy przykład sprawdza stan Socket przy użyciu wszystkich trzech SelectMode wartości wyliczenia. Wywołanie metody Socket.Poll przy użyciu wyliczonej wartości SelectWrite powinno zwrócić true
wartość .
//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
Uwagi
Wyliczenie SelectMode definiuje tryby sondowania, które można przekazać do Socket.Poll metody. Użyj wartości SelectRead, aby określić, czy nasłuchujący Socket ma przychodzące żądania połączenia. Użyj wartości SelectWrite, aby określić, czy element Socket jest zapisywalny. Użyj wartości SelectError, aby określić, czy w elemecie występuje warunek błędu Socket. Aby uzyskać wyjaśnienia dotyczące możliwości zapisu, czytelności i obecności warunków błędu, zobacz metodę Socket.Poll .