【Qt】QProcess用法小结
1、简述
QProcess用来启动和管理外部进程,比如:启动shell命令、shell脚本等
2、用法
1)启动进程
- start():异步启动进程,不会阻塞调用线程。可以与进程交互,如读取输出、写入输入等。
- execute():同步启动进程,会阻塞调用线程直到外部程序执行完毕。返回进程的退出代码。
- startDetached():在独立的进程中启动外部程序,不与父进程的 QProcess 实例进行通信。适用于不需要与父进程交互的独立应用程序。
start() 启动的进程生命周期与 QProcess 对象绑定,当 QProcess 对象被销毁时,由它启动的进程也会被销毁。而 startDetached() 启动的进程是独立的,即使 QProcess 对象被销毁,进程也会继续运行。
2)读取输出
- 读取标准输出:readAllStandardOutput()
- 读取标准错误输出:readAllStandardError()
3)进程状态
- state() 获取进程的状态,如是否正在运行、是否已结束等。
- exitStatus()退出状态
- exitCode() 获取退出码