Gast
#2496368
Hallo zusammen, ich weiß nicht, ob das nun ein QT-spezielles Problem ist oder ein generelles Netzwerk Problem. In diversen QT-Forum wurde mir bislang nicht geholfen. Ich sitze gerade vor folgendem Problem: Ich habe ein Applikation unter QT, die eine Client-Server-Kommunikation durchführt. Dabei verbindet sich ein Client mit dem Server. Ab dann werden Daten in der Form gesendet, dass der Server etwas sendet und der Client antwortet. Ich habe nur das Problem bei einen ungewollten Verbindungsabbruch (z.B. durch ziehen des Netzwerkkabels). Mein Server ist realisiert durch ein QTcpServer. Sobald sich der Client verbindet, mache ich dahin ein QTcpSocket auf (nextPendingConnection()). Wenn nun Daten zum Client gesendet werden, aber das ACK auf dieses Paket nicht erfolgt, geschieht folgendes: Mein TCP/IP-Stack scheint automatisch Keep-Alive-Messages zu senden. Wenn dann mehrmals keine Antwort kam, bekommt mein QTcpSocket mit, dass es disconnected wurde. Ein nachfolgender Versuch, die Verbindung zu schließen (ein FIN-Packet) schlägt dann auch fehlt. Fatal an der ganzen Geschichte ist, dass ich den TCP/IP-Port, der hier nicht ordentlich geschlossen werden konnte, danach nie wieder benutzen kann. Erst nach einem Neustart des Computers geht es wieder. Hat jemand einen Tipp für mich, was ich versuchen könnte?
