Tag: qtcpsocket
Der QTcpSocket-Klasse, Teil der Qt-framework, bietet einen TCP-socket.
1
Antworten
Derzeit in meinem QT-code, ich habe so etwas wie dieses: QByteArray tick_stream; clntSocket->waitForReadyRead(); tick_stream = clntSocket->read(800); In der Dokumentation heißt es Diese Funktion blockiert solange, bis neue Daten zum Lesen verfügbar sind und die readyRead () -
1
Antworten
Ich bin ein wenig verwirrt über das Verhalten von QTcpSocket::waitForBytesWritten()... Bis Wann wird diese Funktion blockieren? Bis die Daten geschrieben, um die OS-internen Puffer für die übertragung über TCP? Bis die Daten physikalisch umgewandelt TCP-Pakete und gesendet?
1
Antworten
Habe ich eine sslclient und sslserver mit QSslSocket in Qt 5.4.1 in debian wheezy. Wenn ich das Programm starte, dass Sie nicht an allen arbeiten. Nach debugging mein code, den ich sah, wenn Sie versuchen, erstellen ein
4
Antworten
Nun den server (mit java implementiert) senden einige stream-Daten zu mir, mein code ist wie folgt: connect(socket, SIGNAL(readyRead()), this, SLOT(read_from_server())); in der read_from_server(): { while (socket->bytesAvailable()) { QString temp = socket->readAll(); } } aber ich finde, dass
3
Antworten
Ich versuche zu schreiben, ein Stück code, der in regelmäßigen Abständen versucht, eine Verbindung zum server mithilfe der QTcpSocket, bis der server hochgefahren ist und fertig. Sollte der client auch automatisch und in regelmäßigen Abständen versuchen Sie,
4
Antworten
Woher weiß ich, welche version von Qt, die ich benutze? Wenn ich öffnen Qt Creator zeigt es "Willkommen im Qt Creator 2.3". In der build-Einstellung, es zeigt jedoch, Qt-Version 4.7.1. InformationsquelleAutor user3472783 | 2014-04-14
6
Antworten
Bei der Verwendung QTcpSocket um Daten zu empfangen, das signal zu verwenden, ist readyRead()die signalisiert, dass neue Daten verfügbar sind. Allerdings, wenn Sie in die entsprechende slot-Implementierung, um Daten zu Lesen, wird keine weitere readyRead() emittiert werden.
4
Antworten
Ich habe einen QTcpSocket und ich lese in einer Schleife. Jedes mal, wenn ein vollständiges Paket gelesen wurde, oder es hat einen Fehler gegeben, den ich manuell überprüfen Sie den status der Buchse innerhalb der Schleife, mit: