Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用环境变量进行简单的进程间通信_Python_Linux_Environment Variables_Inter Process Communicat - Fatal编程技术网

Python 使用环境变量进行简单的进程间通信

Python 使用环境变量进行简单的进程间通信,python,linux,environment-variables,inter-process-communicat,Python,Linux,Environment Variables,Inter Process Communicat,如果我要使用Linux环境变量作为在不同进程(用Python编写)之间共享信息的简单方式,我需要注意哪些暗示/警告?例如,在单处理器/核心系统上读写是原子的吗 我正在Raspberry Pi上设计一个嵌入式系统,我将有多个独立的进程执行监视和控制。这些进程有时需要访问将由另一个进程更新的共享“属性”。例如,一个进程可能监视RFID读卡器,并使用上次刷卡的序列号更新环境变量。其他进程将能够访问该序列号并使用它 我考虑这个想法的唯一原因是简单。我只对在进程之间共享简单的字符串和数字感兴趣,我觉得这比

如果我要使用Linux环境变量作为在不同进程(用Python编写)之间共享信息的简单方式,我需要注意哪些暗示/警告?例如,在单处理器/核心系统上读写是原子的吗

我正在Raspberry Pi上设计一个嵌入式系统,我将有多个独立的进程执行监视和控制。这些进程有时需要访问将由另一个进程更新的共享“属性”。例如,一个进程可能监视RFID读卡器,并使用上次刷卡的序列号更新环境变量。其他进程将能够访问该序列号并使用它


我考虑这个想法的唯一原因是简单。我只对在进程之间共享简单的字符串和数字感兴趣,我觉得这比使用套接字之类的东西更简单。

我也在RPI上开发嵌入式系统,在某些情况下也有类似的要求。 根据我的经验,最好的方法是使用Linux命名管道(FIFO)

这里有一些资源,当然还有更多的在线资源:




环境变量绝对不是作业的工具。它们是在流程启动之前设置的,只能由该流程更改,并且只能由该流程启动的子流程观察更改。没有真正的沟通能力,除了一个方向…即使你可以,也不要这样做。没有“正常”的方法可以做到这一点,你可以做的是可怕的黑客,只会导致心痛。相反,可以问一个问题,详细说明流程需要如何交换信息,人们可以帮助您将选择范围缩小到适当的IPC。谢谢,经过一点实验后,我得出了相同的结论-您不能像我预期的那样真正使用它们。