如何快速取出一个不确定内容的MAP值?
旗木五五开 2017-02-14 09:43:53 现在有一个需求是程序需要通过key获取一个不确定返回时间的value值,例如给一个key:zhangsan,要得到value:张三,但是“张三”并不确定什么时候返回,现在我用了个最笨的办法,使用程序轮询一个MAP,等值返回的时候将"zhangsan","张三"放到MAP中,这样就可以查询到了。但问题是轮询的时间越短对性能影响越大,并且可能存在多个类似的程序在跑,代码块如下:
while (true) {
if (map.containsKey("zhangsan")) {
name=map.get("zhangsan");
break;
} else {
try {
Thread.sleep(500);
} catch (InterruptedException e) {
logger.warn("", e);
}
}
}
求教有没有其他方案可以更好的解决这个问题。谢谢