如何知道Qprocess是否已成功完成其執行或是否已使用process.kill()強制殺死?在這兩種情況下,exitstatus()都是normalExit。 有什麼辦法嗎?QProcess Killed或成功完成
1
A
回答
1
我不認爲有任何特定的函數調用,如果這就是你想要的。你沒有提及你使用的是哪個平臺,但在Linux的情況下,調用kill()會向進程發送一條消息以終止它,因此就進程而言,完成時一切正常。
雖然是子類QProcess並且重載了kill函數來設置一個布爾值,您可以在QProcess發出完成()時檢查它。
0
QProcesss::exiStatus()會給你這個信息。如果QProcess正常退出,它將返回正常退出,或者如果該進程被終止,它將返回崩潰狀態。
您也可以檢查QProcess::exitCode()以查看該過程的確切退出碼。
如果一個進程被SIGKILL終止,以下是一個Linux例子。
QProcess subproc;
// Run the process here
subproc.waitForExit();
qDebug() << "Status: " << subproc.exitStatus()
qDebug() << "Code: " << subproc.exitCode()
雖然子進程正在運行運行以下Linux命令:
kill -9 <subproc PID>
再下面是印刷:
Status: CrashExit
Code: 9
在不使用在子過程kill命令觀察輸出如下:
相關問題
- 1. jquery.filedownloader不打完成或成功回調
- 2. 200表示請求是否成功啓動或成功完成?
- 3. QProcess中未完成創建文件
- 4. 檢查qprocess是否已完成
- 5. 監控運行QProcess中和返回值時QProcess中完成
- 6. 等待QProcess中完成或持續時間超過
- 7. System.ComponentModel.Win32Exception:操作成功完成
- 8. 命令成功完成
- 9. 成功回調()完成
- 10. Ajax請求。哪個回調首先執行完成或成功?
- 11. 如何確認Android共享意圖成功或完成
- 12. jQuery AJAX - 做成功或完成回調的東西?
- 13. if語句bash - 沒有成功完成或只做失敗
- 14. .NET MVC JSON Post調用響應沒有完成或成功
- 15. Ajax調用在實際完成調用之前完成成功?
- 16. Google腳本未能成功完成
- 17. jQuery Deferred完成vs成功回調
- 18. 成功完成遞歸回調
- 19. 無法成功完成身份驗證
- 20. ftp mget不顯示成功完成
- 21. jQuery ajax後完成/成功/刪除後
- 22. STSADM.exe - 「操作成功完成」 - 兩次?
- 23. Win32Exeption:操作成功完成...圖片
- 24. Spring:掛起FrameworkServlet.processRequest成功完成請求
- 25. 完成後的成功消息jsonfile npm
- 26. zabbix如何成功完成安裝?
- 27. 成功後Ajax重試號碼完成
- 28. BigQueryIO.Write成功完成後調用方法
- 29. jquery自動完成成功JSON映射
- 30. 「System.IO.IOException:操作成功完成」異常