在我的应用程序中调用 ORMLiteRuntimeExceptionDao
的createOrUpdate(...)
方法非常慢。
我有一个非常简单的对象 ( Item
),它有 2 个整数(一个是generatedId
)、aString
和 a double
。我用下面的代码测试了(大致)更新数据库中的对象(100 次)所需的时间。日志语句记录:
更新 1 行 100 次的时间:3069
为什么在只有 1 行的表中更新对象 100 次需要 3 秒。这是正常的 ORMLite 速度吗?如果不是,可能是什么问题?
RuntimeExceptionDao<Item, Integer> dao =
DatabaseManager.getInstance().getHelper().getReadingStateDao();
Item item = new Item();
long start = System.currentTimeMillis();
for (int i = 0; i < 100; i++) {
item.setViewMode(i);
dao.createOrUpdate(item);
}
long update = System.currentTimeMillis();
Log.v(TAG, "time to update 1 row 100 times: " + (update - start));
如果我创建 100 个新行,那么速度会更慢。
注意:我已经在使用ormlite_config.txt
. 它记录"Loaded configuration for class ...Item"
所以这不是问题。
谢谢。