我正在使用system()来调用可执行程序(服务器)。现在经过一段时间后,我想从我的c程序本身终止这个程序。有谁知道如何做到这一点? 操作系统运行:(http://rcn-ee.net/deb/rootfs/precise/ubuntu-12.04-r4-minimal-armhf-2012-07-16.tar.xz)
答案 0 :(得分:5)
执行此操作的最佳方法是使用一个函数,使您可以比system()
更好地控制生成的过程。但是,这将是特定于平台的。
对于Windows,请使用CreateProcess()
返回HANDLE
,稍后您可以在TerminateProcess()
中使用fork()
来终止该过程。
对于Unix,使用exec()
和kill()
,它会为您提供子进程的pid,您可以稍后在{{1}}中使用它来终止该进程。