从Python中的守护进程获取返回值

时间:2016-06-08 13:39:36

标签: python unix daemon

我编写了一个python守护程序进程,可以使用以下命令启动和停止

/usr/local/bin/daemon.py start
/usr/local/bin/daemon.py stop

我可以通过从python脚本调用这些命令来实现相同的结果

os.system('/usr/local/bin/daemon.py start')
os.system('/usr/local/bin/daemon.py stop')

这完全正常,但现在我希望为守护进程添加一个功能,以便在运行命令时

os.system('/usr/local/bin/daemon.py foo')

守护进程返回一个Python对象。所以,像:

foobar = os.sytem('/usr/local/bin/daemon.py foo')

为了清楚起见,我在守护进程中准备好了所有逻辑来返回一个Python对象,我只是想不通知如何将这个对象传递给调用python脚本。有什么办法吗?

2 个答案:

答案 0 :(得分:1)

您是不是想要实现简单的序列化和反序列化? 在这种情况下,我建议查看pickle(https://docs.python.org/2/library/pickle.html)以将数据转换为守护程序端的通用文本格式,并将其转换回客户端的Python代码。

答案 1 :(得分:0)