1

切断前に転送されたすべてのデータを読み取ろうとしています:

while( socket->state() == QTcpSocket::ConnectedState )
    if ( socket->bytesAvailable() > 0 )
        qDebug("Read from client: %s", QString(socket->readAll()).toStdString().c_str());

しかし、相手側から切断したとき、socket->stated()まだ残っ ているようですQTcpSocket::ConnectedStateが、ソケットが相手側から切断されたことをどのように検出できますか?

PS:
シグナル/スロット メカニズムを使用する必要がありますか? シグナル/スロットメカニズムを回避することは可能ですか?

4

1 に答える 1