iOS开发定时器注意细节

定时器经常用的有三类:NStimer、CADisplayLink和GCD定时器

NSTimer注意事项

1,在使用结束的时候一定要置空,invalidate方法进行释放;

2,手动把timer加到Runloop中的时候,一般使用NSDefaultRunLoopMode,但是当UIScrollView滑动的时候,定时器会收影响(滑动期间,不走定时器方法),可以通过修改mode改变,一般用NSRunLoopCommonModes;

CADisplayLink注意事项:

和NSTimer一样,注意使用invalidate释放,并置空否则会造成内存泄露,适合做界面渲染;

GCD注意事项:

dispatch_source_set_event_handler在子线程,需要使用dispatch_async(dispatch_get_main_queue(), ^   })回到主线程更新UI,  

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容