请教QSocketNotifier的问题。。

weixin_38050362 weixin_38050362 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我用QFile打开一个文件,然后用QSocketNotifier监听它的描述符是否可读,如果activatied则进入槽函数打印一句话。但实际运行时,终端不停的重复打印(不停的进入槽函数),我很奇怪,没有往文件写任何东西啊?如果我去读文件,什么都读不到。。。代码如下:Server::Server(QString fileName, QObject *parent)    :QObject(parent){    file = new QFile(fileName, this);    if(file->open(QIODevice::ReadWrite)){        if(file->handle() >= 0){            notifier = new QSocketNotifier(file->handle(), QSocketNotifier::Write, this);            connect(notifier, SIGNAL(activated(int)), this, SLOT(onActivated(int)));        }    }else        qDebug() << "open file failed!";}voidServer::onActivated(int){    char buf[32];    int n = file->read(buf, 31);    qDebug() << "n = " << n;}如上所述,总是不停的进onActivated,读的n总是0。。。。盼望解答疑惑,谢谢!
...全文
评论 2
收藏 已收藏
分享
返回顶部