我有2個守護進程,它們應該訪問同一個變量。 我爲全局變量創建了第三個文件,每個守護進程都可以訪問該變量。但是當一個人改變這個變量時,另一個人仍然會看到默認值。多個文件中的Python全局變量
例如:
glob.py
time = 0
守護程序:
import datetime
import time
import glob
while(True):
glob.time = datetime.datetime.now()
time.sleep(30)
守護B:
import glob
while(True):
print(glob.time)
將打印0每次 我希望我」 v e讓我的問題清晰明瞭,有人可以幫助我。 如果您需要更多信息,請隨時詢問。
如果你的守護進程是進程,那麼他們有單獨的數據空間。如果它們是線程,它們共享相同的數據空間(變量)。請說明你如何創建/產生它們。 – Pynchia
另外,你應該避免命名一個文件「glob」。py「,因爲它會影響到stdlib模塊」glob「 - 這可能會導致意外的錯誤 – jsbueno
如果你使用的是'threading',這將按預期工作,所以我假定你正在使用'multiprocessing'。 [在進程之間共享狀態](https://docs.python.org/2/library/multiprocessing.html#sharing-state-between-processes)。 –