C ++暂停外部程序

时间:2014-11-19 21:47:19

标签: c++ execution

有可能以任何方式强行暂停执行外部程序吗?或者产生类似效果的东西。

我已经看到了这种强大的功能,这是我的华硕笔记本电脑上的第三方软件,但是我很好地管理它们。

2 个答案:

答案 0 :(得分:1)

您可以发送信号进行处理。根据您的操作系统,它们意味着不同的东西。捕获信号的程序可以终止,睡眠或继续。

以下是有关信号的手册:http://www.cs.cf.ac.uk/Dave/C/node24.html

简而言之:

使用kill(不要害怕,函数只是被称为kill并且不会自行终止任何东西)来向已知进程id发送信号。您可以使用终端中的ps aux在linux中获取进程ID。这个Linux信号看起来很有希望:

SIGCONT 19 /* continue a stopped process */

int kill(int pid, int signal) 
  • 向进程发送信号的系统调用,pid。如果pid大于零,则将信号发送到进程ID等于pid的进程。如果pid为0,则信号将发送到除系统进程外的所有进程。

我对Windows SIGNAL代码了解不多,但它的工作方式应该类似。不知道他们是否正在处理与Linux不同的信号代码。

如果您的程序获得特定信号,还有:signal(int number,functionPointer)来调用函数。

答案 1 :(得分:0)

我不了解暴力,但你可能只是在一个程序中设置一个调试中断,这会暂停它。