2017-12-08 6 views
0

私はアプリケーション内に同じキーをmemcacheに入れようとするスレッドがたくさんあります。私がする必要があるのは、あるスレッドがそのキーを置くと、他のスレッドはそのキーを再び置くべきではないということです。安全にAppEngineで並行Memcacheを処理する

私はこのように使用しようとしていたputIFUnTouchedのようにmemcacheが提供するいくつかのメカニズム、全体で来ている:

IdentifiableValue value = memCache.getIdentifiable("item_id"); 
mc.putIfUnTouched("item_id", null, "user_id"); 

しかし、それは私にこの例外与える:oldValue mustn't be nullを。

私はまた、CASを見つけました。私はこのような状況でどちらを使う必要があるのか​​、今混乱しています。

ありがとうございます。

答えて

1

私は答えを見つけた:

memCache.put("key", "object", Expiration.byDeltaSeconds(10000), MemcacheService.SetPolicy.ADD_ONLY_IF_NOT_PRESENT); 
関連する問題