日期:2014-05-16  浏览次数:20444 次

redis的Pipeline使用
废话不多说,直接上源码:
报错前的代码:
Pipeline pipeline= jedis.pipelined();
Set set=new LinkedHashSet();
Response>  response= pipeline.keys("aritst:*:id");
pipeline.exec();
set=response.get();
System.out.println(set.size());
执行后报错如下:
Exception in thread "main" redis.clients.jedis.exceptions.JedisDataException: Please close pipeline or multi block before calling this method.
at redis.clients.jedis.Response.get(Response.java:23)

后来在网上查找了一些资料,发现将pipeline.exec();修改成pipeline.sync();就可以!!
至于什么原因就不知道,希望看到文章的同志发表一下观点,谢谢!!
1 楼 fuchao01 2012-06-13  
关注一下!!!