我可以在UiApplication for blackberry中使用invokeLater语句包含我的try catch块。
使用invokeLater方法的确切目的是什么。它是如何被调用的?
这是代码
UiApplication.getUiApplication().invokeLater(new Runnable()
{
public void run()
{
try{
//Statements
}
catch()
{
}
}
});
答案 0 :(得分:2)
是的,您可以在run-method中包含自己的try-catch
块。 invokeLater和invokeAndWait的目的是使从event-thread外部做影响UI的事情成为可能:事件线程是具有事件锁定的线程,意思是线程负责执行绘制和处理事件的所有代码。只有事件线程可以处理传入事件并更新关联应用程序的UI。
当您调用invokeLater方法之一或invokeAndWait时,您的Runnable将排队等待在事件线程内运行。使用invokeLater,调用方法的代码可以继续运行,Runnable迟早会在事件线程中运行。使用invokeAndWait,调用该方法的线程将一直等到Runnable在事件线程中运行,然后再继续。