我有两个问题。我正在开发一个Android应用程序,它将在xml
文件中存储项目列表。此列表可能会变大,但这取决于用户。我使用DOM
解析器来存储和SAX
解析器进行读取。现在我只是执行读写方法。
第一个问题:我应该将方法包装在Thread
还是AsynchTask
?老实说,我不知道他们对大量数据的解析速度有多快。
第二个问题:我是否应该使用不同类型的数据容器来存储数据?数据库或其他东西。
提前致谢。
答案 0 :(得分:0)
回答第一个问题:如果您尝试使用多个线程写入文件,则需要在线程之间进行一些协调,您确实希望避免在同一时间执行这些操作。您需要同步文件访问权限并且只写入整个记录/行,或者您需要有一个策略来将文件的区域分配给不同的线程,例如重新构建具有已知偏移和大小的文件。
回答第二个问题:你绝对应该尝试使用数据库进行存储,然后异步访问它。
因此,将您的应用程序迁移到数据库进行写入和读取,它将使您的最终用户体验更好,并使您的应用程序更快。