私のpythonプログラムにキャッシュを入れるためにdogpileを使用しています。プログラムの初期化中に、キャッシュを消去しますSimpleCache.set_fault_injector(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