关于“监视进程”的问题。

AMengKong 2003-07-28 10:59:55
为了监视一个程序是否正在运行,我采取的办法是监视进程(Process)是否存在,一旦不存在,就证明程序没有运行。(请问有没有更好的办法?)
  监视的时候,我试了两种方法——
①新建一个线程,用“死循环”,也就是死盯着用Process.GetProcessesByName(进程名)这个数组的长度是不是0,如果是0说明程序Over了。结果一运行,目的是达到了,可惜CPU的资源一下子就上到了100%——有没有好办法?
②用Timer控件,1秒(半秒、300毫秒、100毫秒……)钟查一次。结果我发现,Timer的间隔越小,CPU的占用率越高——有没有更好的办法?
注:间隔1秒(1%-2%),间隔半秒(4%±),100毫秒(40%±),10毫秒(100%)
...全文
16 1 打赏 收藏 举报
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
TheAres 2003-07-28
  • 打赏
  • 举报
回复
间隔1秒就已经很实时了。没有必要10毫秒
发帖
C#

10.8w+

社区成员

.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
帖子事件
创建了帖子
2003-07-28 10:59
社区公告

让您成为最强悍的C#开发者