//主线程同步队列
#define dispatch_main_sync_safe(block)\
if ([NSThread isMainThread]) {\
block();\
} else {\
dispatch_sync(dispatch_get_main_queue(), block);\
}
//主线程异步队列
#define dispatch_main_async_safe(block)\
if ([NSThread isMainThread]) {\
block();\
} else {\
dispatch_async(dispatch_get_main_queue(), block);\
}
//用法
dispatch_main_async_safe(^{
//需要执行的代码片段;
});
SDWebImage中两个比较好用的宏定义定义 之dispatch_main_async_safe
最新推荐文章于 2026-04-05 05:29:18 发布
本文深入解析了iOS开发中主线程同步队列和异步队列的使用方法,通过定义宏简化了操作流程,确保了UI线程的安全性与效率。详细阐述了如何在不同场景下灵活应用这些队列,以实现高性能的并发控制。

356

被折叠的 条评论
为什么被折叠?



