• 5210阅读
  • 5回复

[提问]怎么用QT/E实现一个进程管理的代码 [复制链接]

上一主题 下一主题
离线kummar
 
只看楼主 倒序阅读 楼主  发表于: 2011-09-19
问题描述是这样的:
首先运行一个简单的程序(就称其为桌面程序吧),上面有几个BUTTON,每点击一个BUTTON就以QProcess *p; p->start("program");方式分别运行一个新进程,那么在桌面程序中怎样管理这些新进程呢?如果新进程出现界面无响应或假死,又怎样让其自动结束,而需重启机子来恢复?
请大牛帮忙回答一下,谢谢!
说明一下程序都是在MINI2440中运行的。

离线jay8830095
只看该作者 1楼 发表于: 2011-09-19
QT支持进程间通信D-BUS,用这个试试。如果进程可以通信了,控制就不成问题。
在不断的变化
离线kummar
只看该作者 2楼 发表于: 2011-09-19
回 1楼(jay8830095) 的帖子
但一个程序怎么判断自己已经死掉,或界面冻结了呢
离线lmmir

只看该作者 3楼 发表于: 2011-09-20
回 1楼(jay8830095) 的帖子
不知道有没有windows的进程间通信的开源代码。。。
离线jay8830095
只看该作者 4楼 发表于: 2011-09-20
如果按“看门狗”的做法是长时间通信不上表示程序死掉,代码上应该可以实现,这个比较容易实现。搞个定时握手。
在不断的变化
离线kummar
只看该作者 5楼 发表于: 2011-09-20
回 5楼(jay8830095) 的帖子
恩,这是一个想法不错,但如果界面冻结了,程序后台的定时器会停止吗,仅是一个假死的话,后台的定时器还是保持工作与桌面程序进行通信的话就达不到所要的效果了
快速回复
限100 字节
 
上一个 下一个