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