var config = new MemcachedClientConfiguration();
config.Protocol = MemcachedProtocol.Binary;
config.AddServer(server[0],int.Parse(server[1]));
var mc = new MemcachedClient(config);
var finish = mc.Store(StoreMode.Set, key, value,TimeSpan.FromSeconds((double)60000));
if(finish)
{
var obj=mc.Get(key);
Debug.Assert(obj==null,"obj is null.")
}结果(Obj)总是返回null,为什么?
如果expire设置为TimeSpan.MaxValue,这是可以的。
发布于 2012-10-03 21:04:19
代码看起来没问题。我已经为此运行了一个测试,它通过了
[Test]
public void Should_get_object()
{
const string key = "1";
const string value = "6";
var mc = new MemcachedClient();
var finish = mc.Store(Enyim.Caching.Memcached.StoreMode.Set,
key, value, TimeSpan.FromSeconds((double)60000));
if(finish)
{
var obj=mc.Get(key);
Assert.That(obj!=null,"obj is null.");
}
}因此,我会怀疑配置,下面是我用来比较的配置
<enyim.com>
<memcached>
<servers>
<add address="127.0.0.1" port="11211"/>
</servers>
<socketPool minPoolSize="10" maxPoolSize="100"
connectionTimeout="00:00:10" deadTimeout="00:02:00"/>
</memcached>
</enyim.com>https://stackoverflow.com/questions/12247213
复制相似问题