Thanks Quinn — that answers the exact question I was trying to pin down.
So for this requirement, there isn’t a supported launchd mechanism that both allows the work to survive its initiating controller and gives launchd responsibility for a hard wall-clock lifetime bound.
An XPC service ties lifetime back to the initiating process, while a LaunchAgent can outlive it but doesn’t provide the wall-time termination guarantee I was looking for. That’s enough for me to rule out the OS-owned lifetime model I was considering and design around that constraint instead.
Really appreciate the clear explanation.
Topic:
App & System Services
SubTopic:
Processes & Concurrency
Tags: