winsock - accept



  • Hallo,

    ich habe mir Sockets angeschaut und nun einen kleinen Server geschrieben.
    Bei jeder neuen Verbindung wird ein neuer Thread gestartet, so dass mehrere Benutzer gleichzeitig auf meinen Server können.

    Nun habe ich folgendes Problem mit accept(): Hier blockiert der Server. Wie kann ich meinen Server herunterfahren, während er auf neue Verbindungen wartet?
    Kann man ein accept-Timeout einstellen?



  • ähm... wie meinst du das?
    Wärend er "im Accept" ist, ist der Server doch schon "runtergefahren".

    Ansonsten schau dir mal select() oder WaitForMultipleObject() bzw. WaitForSingleObject() an.

    Da gibts nen Timeout dann dabei.



  • hallo,

    wenn Du den Socket schließt auf dem der Server hört, dann bricht wenn er in accept steht ab. Den Fehler kannst Du ignorieren, ist ja so gewollt.
    Der Server selbst müßte dazu aber in einem Thread laufen, oder per Client ein
    entspr. Kommando akzeptieren.

    MfG
    RB


Anmelden zum Antworten