好的,GWT 中没有同步调用。
但如果我有这样的事情:
class XXX {
Config c=new Config();
c.doSomething();
}
和类配置
public class Config {
private static HashMap<String,String> map;
public Config(){
final ServerProxyAsync serverProxy= GWT.create(ServerProxy.class);
serverProxy.getParameters(new AsyncCallback<HashMap<String,String>>() {
@Override
public void onFailure(Throwable caught) {
System.out.println("getParameters: FAILED!");
map=null;
}
@Override
public void onSuccess(HashMap<String, String> result) {
System.out.println("getParameters: OK!");
map=result;
// RETURN NOW!!!!
}
});
}
如果异步调用没有终止我不能做doSomething()
,因为有时在地图初始化之前调用该方法。有办法吗?