PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Python
[问题] Python有类似Shared Memory的方法吗?
楼主:
woogee
(woogee)
2017-11-22 17:15:54
大家好,小弟写程式遇到一个问题,程式执行逻辑大概是这样
有三支程式为A.py、B.py、C.py
A和C是我写的程式,B的部分是别人写的
B基本上因为程式已经太大,几乎无法更动,牵一发动全身
所以不考虑从B这支程式修改。
至于A这个程式,执行时会去读取一个叫做config.json的设定档
之后透过Thread执行B、B会去扫描某个资料夹下的所有Python档案去执行
我的C档案就是放在B会扫描的资料夹下,所以B会去执行我的C程式
问题是这样的,我A这支程式读取的config.json,希望能够让C也能使用这些设定
目前我的做法是让C再读取一次config.json
但因为A有可能在短时间内呼叫上百次B,B每次执行就呼叫一次C
C就疯狂的去读取config.json,担心会效能或其他问题
我希望是直接透过A读取好给C、但因为B扫描执行并不会带参数给C
所以不知道怎么直接把设定丢给C
网络上我找到几种方式像是mmap,但这看起来好像也是用档案当作交换
还有pickle但这也是用档案交换跟直接用C去读档没有两样
也有试过globals设定变量,从C.py用inspect抓,但总是抓不到
试过很多种方法都无功而返,想请问各位大大有没有好方法呢,谢谢!
作者:
johnlinvc
(阿翔)
2017-11-22 18:14:00
用 os.environ A是B的 parent process, B也是C的所以A 也是 C的 parent process, C 会继承 A 的environ
https://git.io/vFbBP
楼主:
woogee
(woogee)
2017-11-22 19:59:00
成功了!! 谢谢johnlinvc大大!!
作者:
djshen
(djshen)
2017-11-22 20:46:00
等真的有效能问题再说
继续阅读
[问题] 截取中文字 资料清洗
Pear888
[问题] mac 装tensorflow问题
peterrr
[问题] raspberry连接AD转换器问题
xeckoe04
[问题] 有关接口的套件
skyHuan
[问题]python可以作到跟终端机软件一样的事吗?
pl132
[问题] 机器学习书本推荐
wainshain
[问题] text mining 错误stemmer
eddy888
[问题] py2转3 语法问题
sda966101
Re: [问题] 请教有关requests爬虫问题
ntasop
[问题] win10 matplotlib 无法使用中文
pig98520
Links
booklink
Contact Us: admin [ a t ] ucptt.com