NSRunningApplication.h:“并非所有应用程序都有pid”

时间:2011-03-24 05:16:38

标签: cocoa unix pid

来自processIdentifierNSRunningApplication.h的评论:

  

并非所有应用程序都有pid。

咦?

我可以在表示已终止进程(NSRunningApplication)的runningProcess.terminated == YES的特定情况下看到这种情况,但我想不出正在运行的应用程序没有进程ID的示例。这就是Unix 101。

文档错误或我遗漏了什么?

1 个答案:

答案 0 :(得分:8)

这是一个对冲。 “正在运行的应用程序”是用户认为是应用程序的东西。显示在cmd-tab切换器等中。这不一定直接对应于进程。在经典环境中,多个应用程序由一个unix进程托管,经典。在这种情况下,NSRunningApplication将为每个“应用程序”返回-1。

那些经历过足够长时间的人已经看到了足够有趣的黑客,他们认为这是一个很重要的定义。