我有这样的代码:
try {
var a = arr[index];
}
catch (e:Error){
putErrorIntoSQLite(); // asynchronous DB access
FlexGlobals.topLevelApplication.close(); // closing the application
}
我认为它是异步数据库访问,在关闭应用程序之前没有时间将错误消息插入数据库。
问题:这是如何预防的?如何推迟close()动作并等待DB事件?如果不是这个
,该怎么办?putErrorIntoSQLite(); // asynchronous DB access
我会使用[Bindable]变量
bindableVar = "This is an error message";
还使用事件?
答案 0 :(得分:0)
你的怀疑可能是正确的。
API有two ways to make database queries,一个是同步的,另一个是异步的。您可以在执行SQL语句时切换到同步模式或侦听SQLEvent.RESULT
(并且仅在调度该事件后关闭应用程序)。
如果您需要进一步的帮助,请考虑使用putErrorIntoSQLite()
方法显示代码。