1
我正在使用dogpile在我的python程序中擁有緩存。 在我的程序的初始化,我清理緩存SimpleCache.set_fault_injector(NO_VALUE)
檢查變量是否設置爲NO_VALUE
@staticmethod
def set_fault_injector(injector):
SimpleCache.save("fault_injector", injector)
然後,我檢索對象:
@staticmethod
def get_fault_injector():
return SimpleCache.get("fault_injector")
injector = get_fault_injector()
在這裏,在我的測試中,如果injector
變量設置爲NO_VALUE
我檢查,但比較結果是False
(應該是TRUE
)。如何檢查injector
是否設置爲NO_VALUE
?我清除緩存的方式是正確的?
In [3]: injector
Out[3]: <dogpile.cache.api.NoValue at 0x7fdde0dfd750>
In [4]: NO_VALUE
Out[4]: <dogpile.cache.api.NoValue at 0x7fdde16dbed0>
In [5]: injector == NO_VALUE
Out[5]: False
In [6]: type(injector)
Out[6]: dogpile.cache.api.NoValue
In [7]: type(NO_VALUE)
Out[7]: dogpile.cache.api.NoValue
In [8]: injector is NO_VALUE
Out[8]: False
[9]: type(injector) == type(NO_VALUE)
Out[9]: True
是的,它使用'.delete(「fault_injector」) – xeon123