在 UI 或后台线程上写入文件 [重复]
Posted
技术标签:
【中文标题】在 UI 或后台线程上写入文件 [重复]【英文标题】:write file on the UI or background thread [duplicate] 【发布时间】:2016-02-28 02:43:34 【问题描述】:我有 AsyncTask,我想将数据写入文件。
我应该在 UI 线程“OnProgressUpdate”还是后台线程“doInBackground”中将数据写入文件
【问题讨论】:
如果您的文件很大,请写入 doInBackground()。 将数据写入文件与 UI 无关。那么它应该在后台线程中。 阅读 AsyncTask 文档,onProgressUpdate 仅用于通知用户当前操作进度,所有任务都应在 doInBackground 中完成。 【参考方案1】:onProgressUpdate() 用于通过该方法操作异步操作的进度
可以通过调用 publishProgress() 从 doInBackground() 方法的主体内触发此回调
在后台线程中阅读和写作总是更好。嗯,它总是一个更好的用户体验!
【讨论】:
【参考方案2】:没有第二个想法。在 doInBackground() 中执行。
【讨论】:
以上是关于在 UI 或后台线程上写入文件 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
在后台线程上将 XML 解析为 CoreData 以不锁定 UI
主线程检查器:在后台线程上调用的 UI API:-[UIApplication applicationState]