SORU
30 HAZİRAN 2009, Salı


Nasıl yuva yapılandırma zaman aşımı bağlanmak

İstemci bağlantısı kesilmiş bir IP adresine bağlanmaya çalışırken, 15 saniye... Nasıl bu zaman aşımı azaltabilir, üzerinden uzun bir zaman aşımı var mı? Bu yapılandırma yöntemi nedir?

Soket bağlantı kurmak için kullandığım kod aşağıdaki gibidir:

try
{
    m_clientSocket = new Socket(
         AddressFamily.InterNetwork,
         SocketType.Stream,
         ProtocolType.Tcp);

    IPAddress ip = IPAddress.Parse(serverIp);
    int iPortNo = System.Convert.ToInt16(serverPort);
    IPEndPoint ipEnd = new IPEndPoint(ip, iPortNo);

    m_clientSocket.Connect(ipEnd);
    if (m_clientSocket.Connected)
    {
        lb_connectStatus.Text = "Connection Established";
        WaitForServerData();
    }
}
catch (SocketException se)
{
    lb_connectStatus.Text = "Connection Failed";
    MessageBox.Show(se.Message);
}

CEVAP
16 Ocak 2011, Pazar


Bunu buldum. Kabul cevabı daha basit ve çalışır .NET v2

Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

// Connect using a timeout (5 seconds)

IAsyncResult result = socket.BeginConnect( sIP, iPort, null, null );

bool success = result.AsyncWaitHandle.WaitOne( 5000, true );

if ( !success )
{
            // NOTE, MUST CLOSE THE SOCKET

            socket.Close();
            throw new ApplicationException("Failed to connect server.");
}

// Success
//... 

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FUNKER530 - Veteran Community & Combat Footage

    FUNKER530 -

    25 Ocak 2007
  • LG Mobile Global

    LG Mobile Gl

    2 EYLÜL 2010
  • National Geographic

    National Geo

    7 Mayıs 2006