私はちょうど私のプロジェクトにclojure.core.cache 0.6.1を追加しました。ここでは非常に短い明確な例を示しています:https://github.com/clojure/core.cacheアウトは機能しません。clojure.core.cacheは、自分の例を使用しても動作しません
例:
$lein repl
REPL started; server listening on localhost port 20513
user=> (require '[clojure.core.cache :as cache])
nil
user=> (def fifoc (cache/fifo-cache-factory {}))
#'user/fifoc
user=> (cache/has? fifoc :foo)
false
user=> (cache/miss fifoc :foo "bar")
{:foo "bar"}
user=> (cache/has? fifoc :foo)
false
は間違ってここで何が起こっていますか?私は完全にポイントを逃していますか?私は同じ結果を持つ他のキャッシュバックエンドですべて試しました。異なるキー、異なる値、別の名前空間、別名別名で試してみました。テストを実行すると、私には次のように伝えられます。
$ lein test clojure.core.cache.tests
Testing clojure.core.cache.tests
Ran 13 tests containing 273 assertions.
0 failures, 0 errors.
これは、これをさらに不思議に思っています。私はテストを見ていて、キャッシュのバックエンドをインポートし、Javaの方法(miss(BasicCache。{})...)をインスタンス化します。これも私も試みましたが、まったく同じ方法で失敗します。
私はただ動作する前に任意のヘルプ?
感謝。ここでの使用例はhttps://github.com/clojure/core.cacheで、自分で状態を処理する必要があることを示していますか?それはそうではないようです...私はあなたが上記のようにステートフルにすることができることをよく知っていますが、私はサンプルとそれがすでに行っていたテストから印象を受けました。私はソースを見て、再びテストします。 – lsh
私はこれを自分のフロントページの悪い例に入れて、私の期待を歪ませるつもりです。たとえ彼らが国家を処理していたとしても、私は本当にそれを望んでいるのか分からない。 – lsh
ああ、私がこの質問をしたときの私の緑の程度は少し恥ずかしいです;) – lsh