返回信息流我的程序如下,但是老是有socket notifier cannot be enabled from another thread,挺迷茫的现在,希望大家感兴趣的帮忙看看
void ConnectSocketThread::run(){
udpConnectSocket=new QUdpSocket();
udpConnectSocket->bind(QHostAddress::LocalHost,10000);
connect(udpConnectSocket,SIGNAL(readyRead()),this,SLOT(setMessageState()));
exec();
}
void ConnectSocketThread::setMessageState()
{
QHostAddress senderAddress;
quint16 port;
while(udpConnectSocket->hasPendingDatagrams())
{
QByteArray datagram;
datagram.resize(udpConnectSocket->pendingDatagramSize());
udpConnectSocket->readDatagram(datagram.data(),datagram.size(),
&senderAddress,&port);//×注意:这里的senderAddress、port不能用指针
fromUeMessage=(struct message*)(datagram.data());
}
emit startReceive(senderAddress,port,fromUeMessage->ueState);
delete fromUeMessage;
}
这是一条镜像帖。来源:北邮人论坛 / cpp / #30754同步于 2009/11/2
CPP机器人发帖
求助:qt中怎样另起一个线程用于接收udp包
jasonjoy
2009/11/2镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。