首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >论QCoreApplication和QProcess

论QCoreApplication和QProcess
EN

Stack Overflow用户
提问于 2008-11-06 09:09:03
回答 1查看 2.3K关注 0票数 0

我正在编写一个QCoreApplication,它应该通过Qprocess创建一个外部进程。

我刚刚注意到,即使在事件处理程序执行之前调用waitForStarted()并且进程状态是Running,外部进程也不会启动,直到在QCoreApplication上调用exec()方法。

也就是说,是否可以将例程的执行推迟到事件处理启动(其中实例化QProcess),或者唯一可行的方法是创建一个一次性的QTimer?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2008-11-06 13:31:56

经过简短的研究后,它得到了处理调用线程的所有挂起事件的方法QCoreApplication::processEvents()。在以下代码中

代码语言:javascript
复制
int main(int argc, char *argv[])
{
    QCoreApplication app(argc, argv);

    QProcess abc(....);
    abc.start(...);

    app.processEvents();

    //////////////////////////////////////////////////////
    // is the process really running ? //
    //////////////////////////////////////////////////////

    return  app.exec();
}

is-the-process-really-running部分需要这样的方法才能让它找到abc进程并运行。否则,在事件循环处理start事件时将启动abc。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/268011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档