TcpListener.Pending Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bekleyen bağlantı istekleri olup olmadığını belirler.
public:
bool Pending();
public bool Pending ();
member this.Pending : unit -> bool
Public Function Pending () As Boolean
Döndürülenler
true
bağlantılar bekliyorsa; aksi takdirde , false
.
Özel durumlar
Dinleyici, çağrısıyla Start()başlatılmadı.
Örnekler
Aşağıdaki kod örneği yöntemini denetler Pending . Bir bağlantı isteği kabul edilmeyi bekliyorsa, yöntemine AcceptTcpClient bir çağrı yapılır.
try
{
// Use the Pending method to poll the underlying socket instance for client connection requests.
TcpListener^ tcpListener = gcnew TcpListener( portNumber );
tcpListener->Start();
if ( !tcpListener->Pending() )
{
Console::WriteLine( "Sorry, no connection requests have arrived" );
}
else
{
//Accept the pending client connection and return a TcpClient object^ initialized for communication.
TcpClient^ tcpClient = tcpListener->AcceptTcpClient();
// Using the RemoteEndPoint property.
Console::WriteLine( "I am listening for connections on {0} on port number {1}",
IPAddress::Parse( ( (IPEndPoint^)(tcpListener->LocalEndpoint) )->Address->ToString() ),
( (IPEndPoint^)(tcpListener->LocalEndpoint) )->Port );
const int portNumber = 13;
try
{
// Use the Pending method to poll the underlying socket instance for client connection requests.
IPAddress ipAddress = Dns.Resolve("localhost").AddressList[0];
TcpListener tcpListener = new TcpListener(ipAddress, portNumber);
tcpListener.Start();
if (!tcpListener.Pending())
{
Console.WriteLine("Sorry, no connection requests have arrived");
}
else
{
//Accept the pending client connection and return a TcpClient object initialized for communication.
TcpClient tcpClient = tcpListener.AcceptTcpClient();
// Using the RemoteEndPoint property.
Console.WriteLine("I am listening for connections on " +
IPAddress.Parse(((IPEndPoint)tcpListener.LocalEndpoint).Address.ToString()) +
"on port number " + ((IPEndPoint)tcpListener.LocalEndpoint).Port.ToString());
//Close the tcpListener and tcpClient instances
tcpClient.Close();
}
tcpListener.Stop();
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
Try
Dim ipAddress As IPAddress = Dns.Resolve("localhost").AddressList(0)
Dim tcpListener As New TcpListener(ipAddress, portNumber)
tcpListener.Start()
' Use the Pending method to poll the underlying socket instance for client connection requests.
If Not tcpListener.Pending() Then
Console.WriteLine("Sorry, no connection requests have arrived")
Else
'Accept the pending client connection and return a TcpClient object initialized for communication.
Dim tcpClient As TcpClient = tcpListener.AcceptTcpClient()
' Using the RemoteEndPoint property.
Console.Write("I am listening for connections on ")
Console.Writeline(IPAddress.Parse(CType(tcpListener.LocalEndpoint, IPEndPoint).Address.ToString()))
Console.Write("on port number ")
Console.Write(CType(tcpListener.LocalEndpoint, IPEndPoint).Port.ToString())
Açıklamalar
Bu engelleyici olmayan yöntem, bekleyen bağlantı istekleri olup olmadığını belirler. AcceptSocket yöntem gelen bir bağlantı isteğini kuyruğa alana kadar ve AcceptTcpClient yöntemleri yürütmeyi Start engellediğinden, kabul etmeye çalışmadan önce bağlantıların Pending kullanılabilir olup olmadığını belirlemek için yöntemi kullanılabilir.