SocketType Sabit listesi

Tanım

Sınıfın bir örneğinin temsil olduğu yuva türünü Socket belirtir.

public enum class SocketType
public enum SocketType
type SocketType = 
Public Enum SocketType
Devralma
SocketType

Alanlar

Dgram 2

Sabit (genellikle küçük) maksimum uzunlukta bağlantısız, güvenilir olmayan iletiler olan veri birimlerini destekler. İletiler kaybolabilir veya yinelenebilir ve sıra dışı gelebilir. Bir Socket tür Dgram , veri göndermeden ve almadan önce bağlantı gerektirmez ve birden çok eşle iletişim kurabilir. Dgram Veri Birimi Protokolü (ProtocolType.Udp) ve AddressFamilyadresInterNetwork ailesini kullanır.

Raw 3

Temel alınan aktarım protokolüne erişimi destekler. kullanarakRaw, İnternet Denetim İletisi Protokolü (.) ve İnternet Grup Yönetimi Protokolü (ProtocolTypeProtocolType.IcmpIgmp) gibi protokolleri kullanarak iletişim kurabilirsiniz. Uygulamanızın gönderirken tam bir IP üst bilgisi sağlaması gerekir. Alınan veri birimleri, IP üst bilgisi ve seçenekleri olduğu gibi döndürür.

Rdm 4

Bağlantısız, ileti odaklı, güvenilir bir şekilde teslim edilen iletileri destekler ve verilerdeki ileti sınırlarını korur. Rdm (Güvenilir Bir Şekilde Teslim Edilen İletiler) iletileri, yinelenenleri kaldırılmış olarak ve sırayla gelir. Ayrıca, iletiler kaybolursa gönderene bildirilir. kullanarak Rdmbir Socket başlatırsanız, veri gönderip almadan önce uzak ana bilgisayar bağlantısı gerekmez. ile Rdmbirden çok eşle iletişim kurabilirsiniz.

Seqpacket 5

Ağ üzerinden sıralı bayt akışlarının bağlantı odaklı ve güvenilir iki yönlü aktarımını sağlar. Seqpacket verileri çoğaltmaz ve veri akışındaki sınırları korur. Tür Socket türlerinden biri Seqpacket tek bir eşle iletişim kurar ve iletişimin başlayabilmesi için uzak konak bağlantısı gerektirir.

Stream 1

Verilerin yinelenmeden ve sınırların korunmasına gerek kalmadan güvenilir, iki yönlü, bağlantı tabanlı bayt akışlarını destekler. Socket Bu türlerden biri tek bir eşle iletişim kurar ve iletişimin başlayabilmesi için uzak konak bağlantısı gerektirir. Stream İletim Denetimi Protokolü 'ni (ProtocolType.Tcp) ve AddressFamily.InterNetwork adres ailesini kullanır.

Unknown -1

Bilinmeyen Socket bir tür belirtir.

Örnekler

Aşağıdaki örnekte oluşturucu için Socket parametre olarak kullanılırSocketType.Stream.

//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

Açıklamalar

Bir öğesinin Socket veri gönderip alabilmesi için önce , ve SocketTypeProtocolTypekullanılarak AddressFamilyoluşturulması gerekir. Numaralandırma, SocketType açmayı planladığınız türü Socket tanımlamak için çeşitli seçenekler sağlar.

Not

SocketTypebazen bir içinde AddressFamilykullanılanı ProtocolType örtük olarak gösterir. Örneğin, olduğunda System.Net.Sockets.SocketTypeSocketType.DgramSystem.Net.Sockets.ProtocolType her zaman ProtocolType.Udpşeklindedir. System.Net.Sockets.SocketType olduğundaSocketType.Stream, System.Net.Sockets.ProtocolType her zaman ProtocolType.Tcpşeklindedir. Uyumsuz bir birleşimle bir Socket oluşturmaya çalışırsanız, Socket bir SocketExceptionoluşturur.

Şunlara uygulanır

Ayrıca bkz.