我有一个用python编写的LaunchDaemon,它以root权限执行长时间的、资源密集型的后台任务。当它工作时,它需要向多个GUI代理发送状态更新(每个登录的用户一个),我正在努力寻找一个合适的IPC机制。由于守护进程和代理在不同的引导上下文中运行,共享对象将无法工作。我不能让守护进程打开套接字,因为它无法长时间响应,客户端必须轮询更新。我想到的最好的方法是让每个代理打开自己的套接字,守护进程依次向每个代理写入数据,但这充其量看起来并不雅观。还有其他选择吗?哦,它必须在MacOSX10.5及更高版本上工作。你知道吗
Tags:
最后,我让每个GUI代理在/tmp下创建一个数据报套接字,然后launchdaemon依次向每个代理发送一条消息,并清理过时的套接字:
完整的实现可以在github上找到:
相关问题 更多 >
编程相关推荐