在我的 BlackBerry 应用程序中,Locator.geocode(...)
请求位于 a 中Thread
,但它仍会阻止 OS 5 设备中的 UI。在 OS 6 和 7 设备中它工作正常。UI 未被阻止。
从Locator.geocode(...)
调用的那一刻到完成,UI 被阻止并且用户无法与应用程序交互。
我想这是 OS 5 的问题。有解决方案吗?
更新:首先,感谢您的快速回复。
我替换
Locator.geocode(...)
了 call forThread.sleep(...)
。UI 变慢但没有被阻塞。我用的模拟器是9300。该
Locator.geocode(...)
请求在一个try..catch()
块内,它不会引发异常。调用完成后它返回null
(我正在使用模拟器)但没有抛出异常。
供您参考,这是控制台打印的内容:(使用 9300 模拟器)
** * *创建 Geocode 类之前的线程数:4
** * *在调用 Locator.geocode 之前 Geocode 类中的线程数:5
** * *在事件线程上运行:false
Locator.geocode(...) // 此时 UI 阻塞(OS 5),直到此请求完成