bibibi CADisplayLink vs NSTimer

2017-08-18  本文已影响0人  bibibime

定义

CADisplayLink:一个能让我们以和屏幕刷新率相同的频率将内容画到屏幕上的定时器。
NSTimer:自己设置的定时器。

区别

  1. 两者都是添加到某个线程的runloop下的,所以如果线程繁忙,都会造成不准时触发。如果需要准时,可以单独为了它创建一个线程,或者直接使用gcd的定时器,因为gcd的定时器和runloop无关。
  2. 由于CADisplayLink是每次屏幕刷新的时候调用的,所以很适合做动画,视频,屏幕刷新时才需要变化的内容,不用人工计算间隔时间调用NSTimer,如果计算的不合理,会造成浪费。
上一篇下一篇

猜你喜欢

热点阅读