2016-03-23 18 views
5

Używam bufora Flask w moim API w pythonie.Pamięć podręczna kolb, odpowiednik delete_memoized dla jasnego

Obecnie używam dekorator @app.cache.memoize(cache_memoize_value) i opróżnić go poprzez wywołanie app.cache.delete_memoized(view)

Problemem jest to, że z memoize będzie buforowane dla n poglądów i nie na określony czas. Jeśli chcę określić limit czasu dla pamięci podręcznej, muszę użyć dekoratora @app.cache.cached(timeout=300) i wyczyścić go za pomocą app.cache.clear(). Jednak ta przejrzysta metoda oczyści wszystko, a nie tylko określony widok.

Jak mogę wyczyścić określony widok tylko podczas korzystania z buforowanego dekoratora?

+0

w rzeczywistości, mam ten sam problem. Istnieje funkcja "delete", ale api mówi: " delete (* args, ** kwargs) Funkcja proxy dla wewnętrznego obiektu pamięci podręcznej. ' – tim

Odpowiedz

2

Jest to w rzeczywistości dość łatwe i powinienem był tego spróbować wcześniej. Podobnie jak w przypadku dekoratora zapisanego w pamięci podręcznej, można określić wartość w pamięci dekoratora. Ale zamiast robić to: @app.cache.memoize(cache_memoize_value)

Trzeba to zrobić @app.cache.memoize(timeout=cache_memoize_value)

+0

Czy wiesz, jak" usunąć "skrwawioną pamięć podręczną, jeśli chcę buforować widoki – tim

Powiązane problemy