什么是主线程?
一个ios程序运行后,默认会开启1条线程,称为“主线程”或“UI”线程。
主线程的作用
1.显示\刷新UI界面
2.处理UI时间(比如点击事件、滚动事件、拖拽事件等)
主线程的使用注意
别将比较耗时的操作放到主线程中
耗时操作会卡住主线程,严重影响UI的流畅度,给用户一种“卡”的坏的体验
多线程的优点
能适当提高程序的执行效率
能适当提高资源利用率(cpu、内存利用率)
多线程的缺点
开启线程需要一定的内存空间(默认情况下,主线程占用1M,子线程占用512KB),如果开启大量线程,会占用大量的内存空间,降低程序的性能。
线程越多,cpu在调度线程上的开销越大
程序设计更加复杂:比如线程之间的通信、多线程的数据共享
ios中多线程的实现方案