ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
640
640
EMPFEHLEN
-
Hallo an alle.
Ich schreibe eine Client/Server Applikation wo mehrere Clients auf den gleichen Server verbinden können.
Jetzt will ich das ganze mit Threads lösen.
Das Programm kann zugleich Client als auch Server sein.
Wenn ich das Programm im Server Modus starte, erstelle ich ein Thread und in diesem
ein Objekt von CAsyncSocket und setze es auf Listen().
Problem:
Wenn ich das Programm schliessen will, will ich zuerst das socket im Thread schliessen, dann das Thread und zum Schluss das ganze Programm.
In OnCancel() lösche ich das Thread mit "delete m_pServerThread".
Das funktioniert auch gut (gibt keine Memory Leaks mehr), aber nur wenn ich kein Objekt von CAsyncSocket erstelle (sprich kein Server der auf Clients wartet).
Wenn ich das Programm ausführe und im Thread den Server starte (Listen) kommt beim schliessen folgende Meldung:
sockcore.cpp - Linie 541
Ich glaube, diese Meldung kommt, weil ich den Server nicht schliesse.PHP-Code:ASSERT(CAsyncSocket::LookupHandle(hSocket, FALSE) != NULL);
Habe schon versucht im Destruktor vom Thread den Server mit Close() zu beenden.
Was ist falsch?
Vielen Dank.Geändert von Dipsi (02.03.07 um 22:50 Uhr)
-
Hi,
du solltest den Socket unbedingt korrekt beenden, könntest mal versuchen, vor dem "close()" ein "ShutDown(2)" durchzuführen.
MfG
-
Hallo
Also das mit ShutDown(2) haut auch nicht hin.
Beim debuggen führt er ShutDown(2) aus und beim Close() haltet er an.
Auch wenn ich das Socket vor dem Thread schliesse kommt die gleiche Meldung.
-
Hat niemand eine Idee
Ähnliche Themen
-
AsyncSocket
Von udops im Forum VisualStudio & MFCAntworten: 3Letzter Beitrag: 05.07.10, 08:54 -
Socket aus anderem Thread schliessen
Von StehtimSchilf im Forum .NET Web und KommunikationAntworten: 4Letzter Beitrag: 25.06.10, 13:41 -
Thread A stösst Änderung in Thread B an. Aber wie?
Von BeaTBoxX im Forum .NET CaféAntworten: 12Letzter Beitrag: 13.12.06, 11:52 -
max - c4d (Thread split by IKEAFREAX on 09.07.2002 23:43 (thread by pasq))
Von pasq im Forum 3D Studio MaxAntworten: 19Letzter Beitrag: 12.07.02, 11:13





Zitieren
Login






