用槽信号取socket的流,槽函数里能debug出来,但是在外面就不能用了。
void RtspThread::recvData()
{
connect(socket,SIGNAL(readyRead()),this,SLOT(sockRecvData()));//有码流过来执行sockRecvData函数
for(int i=0;i<10;i++)
{
qDebug()<<buf.size();
Sleep(1000);
}
}
void RtspThread::sockRecvData()
{
QByteArray recvData;
recvData=socket->readAll();
buf.append(recvData);
qDebug()<<buf.size();
}
在第二个函数里buf的size一直增加,说明从socket中获得了值,但是第一个函数里面的buf一直为0,不解?