以下两段java代码的区别是什么?

  • 第一段:
    if (!"".equals(windowNo)) {
    setWindowNo(windowNo);
    Display.getDefault().asyncExec(new Runnable() {
    public void run() {
    licenseKeyAlertDialog = new LicenseKeyAlertDialog(AplMain
    .getActiveWorkbenchShell(), windowNo,
    lisenceKeyInfo.getExpirationDays());
    }
    });
    Display.getDefault().asyncExec(new Runnable() {
    public void run() {
    licenseKeyAlertDialog.open();
    }
    });
    }


    第二段:

    if (!"".equals(windowNo)) {
    setWindowNo(windowNo);
    Display.getDefault().asyncExec(new Runnable() {
    public void run() {
    licenseKeyAlertDialog = new LicenseKeyAlertDialog(AplMain
    .getActiveWorkbenchShell(), windowNo,
    lisenceKeyInfo.getExpirationDays());
    licenseKeyAlertDialog.open();
    }
    });
    }
    请指教,谢谢!


LEATH
浏览 491回答 4
4回答

慕的地8271018

第一段lisenceKeyInfo.getExpirationDays())和 licenseKeyAlertDialog.open();是异步执行的吧,第二段是顺序执行的。 第一段有可能第2个方法打开了窗口,第一个方法还没取到过期时间。

Cats萌萌

第一个开了两个线程,而第二段只开了一个线程。

慕姐4208626

第一段是 异步执行第二段是 同步执行

UYOU

要是能把代码的样式整理一下的话,会让人舒服很多。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java