我有一个XPC服务,以root用户身份运行,需要监视其他特定进程是否正在运行。
从NSWorkspace中检索正在运行的进程的列表似乎只生成用户进程的列表,而没有root拥有的守护程序
let workspace = NSWorkspace.shared
let applications = workspace.runningApplications
for application in applications {
if let url = (application.executableURL?.absoluteString) {
os_log("%{public}s", log:scribe, type:.debug, url)
}
}
}
您将如何检索包括守护程序在内的整套正在运行的进程?
当然,它可以执行ps
并解析输出,但这并不是经常调用的理想选择。