gpt4 book ai didi

objective-c - 观察一个PID未知的进程(无UI)

转载 作者:太空宇宙 更新时间:2023-11-04 02:17:06 26 4
gpt4 key购买 nike

我找到了 this问题,但即使接近我所需要的,也是无用的

基本上,我有一个应用程序需要在另一个进程(已知名称)启动和/或终止时执行某些操作,但我没有 PID,所以我无法设置 kqueue 来查找它.

我可以为“ps aux | grep processtolook | grep -v grep”命令做一段时间,但这是我最后的选择。

有什么想法吗?

最佳答案

看看这个答案:Determine Process Info Programmatically in Darwin/OSX . libproc.h 头文件包含 proc_listpids,它将为您提供所有 pids。然后,您可以循环获取 pid 信息并使用 proc_pidinfo 并检查名称。按照建议查看顶级资源也可能是值得的。 (当前版本在这里http://www.opensource.apple.com/source/top/top-67/。)

不幸的是,这是一个未记录的接口(interface),随时可能更改。此外,这不是最快的事情,因为您必须遍历系统中的所有进程。通常,这不是执行此操作的好方法。

更好的方法可能是编写一个新的进程外观,它只调用旧的进程外观,您可以移动或重命名它。然后它可以通知您进程的启动和停止。有这种可能吗?

关于objective-c - 观察一个PID未知的进程(无UI),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6045878/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com