J2Cache 死循环
net.oschina.j2cache.redis.RedisGenericCache#keys(redis.clients.jedis.BinaryJedisCommands)
private Collection<String> keys(BinaryJedisCommands cmd) { Collection<String> keys = new ArrayList(); String cursor = "0"; ScanParams params = new ScanParams(); params.match(this.region + ":*").count(this.scanCount); List partKeys = null; do { ScanResult<String> scanResult = ((MultiKeyCommands)cmd).scan(cursor, params); partKeys = scanResult.getResult(); if (partKeys != null) { keys.addAll(partKeys); cursor = scanResult.getStringCursor(); } } while(partKeys != null && partKeys.size() != 0); return keys; }
当partKeys 获取到值后就死循环了。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
建议先了解下 redis 的 scan 命令,然后你就懂为什么要这么写了