timeout bei connect() verkürzen.



  • Hallo,
    mein wenn ich mich mit einem connect verbinde, kann es sein, das keine Verbindung zustande kommt. Nun will ich aber nicht 40-50sekunden warten bis connect wieder zurückkehrt. Kann ich dieses Intervall irgendwie verkürzen? Hab gelesen, das es irgendwie mit select gehen soll, sehe aber keinen zusammenhang, wie ich select und connect nutzen kann?!

    Ich nutze bisher nur die winsock.h
    Thnx

    __________________
    GReetz Net-srac



  • IMHO geht das auch mit Select nicht schneller.
    Der Computer braucht halt eine gewisse Zeit, bis er alle DNS-Server und host dateien abgeklappert hat, oder bis der andere rechner (nicht) antwortet.
    Mit Select kehrt die Funktion nur sofort zurück. Die Nachricht ob connect geklappt hat, kommt trotzdem erst nach dieser Zeit.



  • Kann ich dann evtl auf mit select sagen, wie lange sie stehen bleiben soll, um auf connect zu warten? Mein Problem ist, das ich mehrere Netzwerkkarten auf eine Verbindung zum Host testen will. Dazu binde ich den erzeugten Socket an eine IP und öffne von ihm eine Verbindung. Nun läuft das Programm alle Netzwerkkarten ab und probiert halt bis es klappt. Dann setzt es einer Variablen den Wert der funktionierenden IP.

    Oder hättest du eine Idee, wie man sowas beschleunigen könnte?



  • Versuch es mal mit setsockopt(). Da gibt´s ,glaub ich, eine Parameter mit dem man die Wartezeit verkürzen kann.


Anmelden zum Antworten