【问题标题】:Asynchronous service in javajava中的异步服务
【发布时间】:2014-10-15 15:17:05
【问题描述】:

我对这个异步调用有疑问:

public class myClass {
    protected final int idObj; 

    public void myMethod() {
        myService.getObj( new AsyncCallback<List<Object>>() {
              @Override
              public void onFailure(Throwable caught) {

              }

              @Override
              public void onSuccess(List<Object> listObject) {
                    idObj = listObject.get(0).getIdObj();
              }
    });


    if(idObj == 1) {
        //do something
    }
  }

}

idObj 的值在第一次等于 0 并且这个 if 块没有被执行。 如何避免这种情况?

【问题讨论】:

    标签: java hibernate asynchronous service


    【解决方案1】:

    这是一个异步调用,这意味着在您的 onSuccess 方法中执行的代码将在稍后执行。 所以执行了 if 语句,但此时你的值仍然是 0。

    您应该将 if 语句放在 onSuccess 方法中。

    【讨论】:

      猜你喜欢
      • 2018-11-02
      • 1970-01-01
      • 2016-09-16
      • 1970-01-01
      • 2012-08-07
      • 1970-01-01
      • 2011-04-28
      • 2012-11-21
      • 1970-01-01
      相关资源
      最近更新 更多