2015-10-07 41 views
0

我有一个活动,在onCreate函数我创建了一个线程从XML文件读取并填充数据库并填充成员dataStructures。如何同步活动工作,给定活动重新创建方向变化

我已经创建了同步方法来执行数据库填充和数据结构填充。

  1. 由于锁定在活动[同步方法]上,当由于方向更改或任何配置更改而重新创建活动时,是否会导致出现问题?
  2. 在这里使用同步方法是否正确?或者我应该使用同步块?

  3. 我该如何处理或保养以免数据库损坏?

  4. 如何确保DataBaseHelper只有一个实例存在,即使在活动重新创建时也是如此?

回答

0

如果你想要做什么,我觉得你想要做的话,我建议要做到以下几点:

  1. 创建一个线程(HandlerThread命名DbAsyncThread或其他)处理所有的方法所有的数据库方法。

  2. 方法应该使用同步块。当存在公共静态方法时使用的同步方法。它总是取决于你想要达到的目标。

  3. 您可以通过异常处理db的错误状态。如果出现异常,则将其丢弃或传递给用户,以便通知用户或您。

  4. 使用回调。如果通过回调通知问题存在问题。如果没有涉及的情况下,不应该有任何问题。

相关问题