如果Cocoa应用程序需要终止另一个进程(它没有生成),可以在10.5 OS X上使用哪些API来执行此操作?请注意,Cocoa应用程序中将不知道要终止的进程的进程ID。需要终止的过程也是Cocoa过程。
答案 0 :(得分:2)
使用NSWorkspace或Process Manager查找进程并获取其PID,然后像往常一样使用kill
。
答案 1 :(得分:2)
Iirc,NSWorkspace只会返回用户自己拥有的进程,但是,当然有很多不同的方法可以解决这个问题:
答案 2 :(得分:0)
NSRunningApplication* app = [NSRunningApplication runningApplicationWithProcessIdentifier:pid];
[app terminate]; // ask the target to terminate self
[app forceTerminate]; // the target will not save the data
答案 3 :(得分:0)
您必须在杀死进程ID之前检索进程ID。要杀死进程,只需向其发送信号SIGABT,SIGTERM或SIGKILL。