我正在开发的应用程序在首次启动时会获取一堆不同的新闻源并更新任何过期的新闻源。发生这种情况时,界面通常会冻结,您无法单击任何内容。实际的网络调用是在单独的线程上完成的,但数据库操作是在主线程上完成的。这会导致界面冻结吗?
有人告诉我,我需要做到一次只将两个要更新的提要插入到网络操作队列中,这样它就不会一次尝试所有这些提要,但它已经设置为只做这么多网络通话一次。我不明白如果它们只是按顺序放入队列中,那么一次队列中的东西会如何导致它运行得更快。如果我错了,请纠正我,我对此还是很陌生。
任何关于什么可能导致 UI 在启动过程中冻结的帮助将不胜感激!