0

我可以在黑莓的 UiApplication 中包含我的 try catch 块和 invokeLater 语句吗?

使用invokeLater 方法的确切目的是什么?它是如何被调用的?

这是代码

     UiApplication.getUiApplication().invokeLater(new Runnable() 
    {
        public void run() 
       {
             try{
                  //Statements
                 }
             catch()
             {
             }
        }
    });
4

1 回答 1

2

是的,您可以在 run-method 中包含自己的try-catch-blocks。invokeLaterinvokeAndWait的目的是使从事件线程外部影响 UI 的事情成为可能:事件线程是拥有事件锁的线程,这意味着该线程负责执行所有用于绘制和处理的代码事件。只有事件线程可以处理传入事件并更新关联应用程序的 UI。

当您调用其中一个 invokeLater 方法或 invokeAndWait 时,您的 Runnable 将排队等待在事件线程内运行。使用invokeLater,调用该方法的代码可以继续运行,Runnable 迟早会在事件线程中运行。使用 invokeAndWait,调用该方法的线程将等到 Runnable 在事件线程中运行后再继续。

于 2012-05-17T11:09:05.167 回答