我对并发并不陌生,并试图了解如何使我的应用程序性能更好。我正在尝试找出是否有办法找出我的应用在主线程上运行/执行操作已有多长时间。
如果我想让我的应用程序性能更好,那就是解决该问题的方法。预先感谢。
答案 0 :(得分:1)
iOS
中并发时需要考虑的几件事。
UI/ UIApplication
相关的任务都将在Main thread
中执行,
您永远不要在任何辅助线程中执行UI任务。启动应用程序时,系统会为您创建主运行循环和主线程,默认情况下,所有任务都在主线程上运行。因此,正如我上面列出的,您可以使用GCD
或NSOperationQueue
创建一个辅助线程来执行与UI无关的长时间运行的任务。因为如果您不为长时间运行的任务创建辅助线程,而仅在Main thread
上运行,那么UI会一直停留到任务结束为止,这显然不是良好的用户体验。
要了解GCD和NSOperationQueue,请检查以下链接:https://www.raywenderlich.com/817-updated-course-ios-concurrency-with-gcd-operations