作为应用程序运行的一部分,我从远程数据库创建字典。这个过程是相当繁重的 I/O,所以我决定创建这个字典的“单例”实例,并在我的应用程序中根据需要调用它。
代码看起来像(在Dictionaries.py
):
state_code_dict = None
def get_state_code_dict():
global state_code_dict
if state_code_dict == None:
state_code_dict = generate_state_code_dict()
return state_code_dict
get_state_code_dict()
然后我在需要的地方导入并调用该函数。我添加了一个打印语句来检查是否state_code_dict
正在重新初始化或重用,我发现它正在被重用(这是我想要的功能)。为什么state_code_dict
存活应用程序的实例在运行?
编辑
我get_state_code_dict
在多个文件中导入函数。