我使用ORMLite来管理我的数据库在我的Android应用程序,它一直工作得很好。有时候,当我尝试更新数据时,我会得到一个包含约束约束的异常。这个例外帮助我追溯到我拨打callBatchTasks()的地方。CallBatchTasks(来自ORMLite)是否在单独的线程中运行?
这实际上是在这一点上的一系列3个电话。第一次调用2更新Table1和Table2。最后一次调用更新一个表(表3),该表用于指定Table1和Table2之间的关系(因此具有约束)。这是得到例外的那个。
table1Dao.callBatchTasks(table1task);
table2Dao.callBatchTasks(table2task);
table3Dao.callBatchTasks(table3task); // Exception here
由于任务执行callable
我想每个都在一个单独的线程上运行。所以如果table3任务超过其他任何一个,它会遇到一个约束问题。这是真的?如果是这样,建议的解决方法是什么,以便它们按顺序执行?
这就是我想的(在找出我的问题后)。无论如何,谢谢你的回应!我将它标记为答案,因为它实际上回答了问题 – compuguru