2009-12-23 38 views
0

我目前正在编写一个项目,在python中我需要一种通用对象的缓存,我已经决定使用WeakValueDictionaries进行此操作。这些通用对象通常被许多其他非通用对象引用。然而,我的主要问题是,我似乎无法围绕使这些WeakValueDictionaries可用于程序的许多不同部分的方式。如果可能,我宁愿不使用“全局”变量。构建python中的weakref缓存

问候

FrederikNS

+0

您是否尝试将它们保存在数据库或文件系统中?也许用泡菜? – jbochi 2009-12-23 16:10:47

+0

问题是,这些通用对象是从本地数据库创建的,因此我希望这些字典留在内存中。我只想在执行过程中从程序的多个地方访问它。 – FrederikNS 2009-12-23 16:21:07

回答

1

也许我不理解你的问题,但使弱引用值可用字典来你的代码是不是真的作出的任何其他可用字典有什么不同到你的代码。我将存储在参考WeakValueDictionary

  • 每个实例(通过self引用)
  • 类(也可通过self引用,但实例之间共享)
  • 一个模块(全局,种)

取决于给出代码的其余部分的最有意义。

+0

你明白我想要的是什么,我的主要错误是我使用了类变体,在那里我需要模块,谢谢让我意识到 – FrederikNS 2009-12-23 16:43:50