【问题标题】:macOS: Keep XPC Service (bundled) running after user quits main appmacOS:在用户退出主应用程序后保持 XPC 服务(捆绑)运行
【发布时间】:2019-05-29 19:30:19
【问题描述】:

我的 macOS 应用程序中捆绑的 XPC 服务需要对父应用程序转储的文件进行一些后期处理工作,这很可能无法在应用程序的使用时间内完成。那么,有没有办法让 XPC 服务在用户退出主应用后也能继续运行呢?

【问题讨论】:

    标签: c macos xpc


    【解决方案1】:

    您可以将其安装为启动守护程序(只要计算机打开,就在根上下文中运行)或启动代理(只要用户登录,就在用户上下文中运行)。

    【讨论】:

      【解决方案2】:

      听起来您应该使用 launchd 的 WatchPathsQueueDirectories 功能。

      只要被监视的任何路径发生变化,WatchPaths 就会启动作业

      只要给定目录不为空,QueueDirectories 就会启动您的作业,并且只要这些目录不为空,它就会让您的作业继续运行

      Apple's launchd documentation 涵盖了这两者。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-07-20
        • 1970-01-01
        • 2013-03-03
        • 1970-01-01
        • 2016-09-28
        • 2011-09-03
        • 1970-01-01
        • 2021-03-02
        相关资源
        最近更新 更多