YTKNetwork的指定回调线程缺失

AFNetworking指定completionQueue可以指定回调的线程.
YTKNetwork写死了主线程回调,实际可以考虑在YTKBaseRequest上加入completionQueue属性,完成在非主线程上回调block或delegte。
之所以有这个需求,是因为在主线程上需要完成一个同步的调用。要完成这个需求,可以在调用请求后,使用一个锁NSCondition或信号量,将主线程挂起等待, 这时候指定回调block是后台线程完成解锁或发送信号,完成主线程得到结果继续执行。而如果只能是主线程回调,这里显然就出现了主线程在等待block执行锁释放,而block在等待主线程执行的局面了。
信号同步挂起等待,可以使用[RACSignal first]方法

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

推荐阅读更多精彩内容