这个过程大致是这个样子:


1 添加通知


2 发送网络请求 里边有一个发送通知的操作


3 执行发送通知的具体操作

代码如下:

1 在VC添加通知

 [[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(receivingYM1:)
name:@"YM1" object:nil];

2 在SYNDispatchProcessor.m 中进行发送通知

-(void) delayTimeGCDbuild
{ // NSLog(@"主线程 %@", [NSThread currentThread]);
//间隔还是1秒
uint64_t interval = * NSEC_PER_SEC / ;
//创建一个专门执行timer回调的GCD队列
// dispatch_queue_t queue = dispatch_queue_create("my queue", 0);
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, );
//创建Timer
_timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, , , queue);
//使用dispatch_source_set_timer函数设置timer参数
dispatch_source_set_timer(_timer, dispatch_time(DISPATCH_TIME_NOW, ), interval, ); //设置回调
dispatch_source_set_event_handler(_timer, ^()
{
[self.arrayLock lock];
if([protocolmutableArrays count]>)
{
NSData* nData = [protocolmutableArrays objectAtIndex:];
// NSLog(@"Hava received datas is----- :%@",[self nDataToGbkString:nData]);
NSData* d = [nData subdataWithRange:NSMakeRange(, )]; NSString* aStr = [[NSString alloc] initWithData:d encoding:NSASCIIStringEncoding];
NSLog(@"在这里进行类型的判断:%@",aStr);
{ //在这里发送通知
[[NSNotificationCenter defaultCenter] postNotificationName:aStr object:[nData subdataWithRange:NSMakeRange(, nData.length-)]]; } [protocolmutableArrays removeObjectAtIndex:];
}
[self.arrayLock unlock]; });

3 执行发送通知的事件

//发送完通知之后接收到漫画数据
- (void) receivingYM1:(NSNotification*) anotification
{
//收到的是漫画的4个cell的大图跟一些相关信息
NSData* nsData = [anotification object];
NSString *string = [[NSString alloc]initWithData:nsData encoding:NSUTF8StringEncoding];
NSLog(@"nsdata:%@",string);
[self performSelectorOnMainThread:@selector(updateResgContollerYM1:) withObject:nsData waitUntilDone:YES];
}
//更新幽默坊漫画ui
-(void) updateResgContollerYM1:(id) data
{
//将data转换成字典类型
NSDictionary* YM1Dict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil]; //用数组进行接收
NSMutableArray *commicArr = [YM1Dict valueForKey:@"comicList"]; //将数据存到字典中
self.FirComicDic = [commicArr objectAtIndex:];
self.SndComicDic = [commicArr objectAtIndex:];
self.ThdComicDic = [commicArr objectAtIndex:];
self.FourthComicDic = [@{@"comicContent":@"酒鬼",@"comicId":@""} mutableCopy]; }

(whh仅供自己参考)进行ip网络请求的步骤的更多相关文章

  1. python爬虫抖音 个人资料 仅供学习参考 切勿用于商业

    本文仅供学习参考 切勿用于商业 本次爬取使用fiddler+模拟器(下载抖音APP)+pycharm 1. 下载最新版本的fiddler(自行百度下载),以及相关配置 1.1.依次点击,菜单栏-Too ...

  2. ios的位置和方向(来自苹果官方文档,仅供简单参考)

    取得用户的当前位置 Core Location框架使您可以定位设备的当前位置,并将这个信息应用到程序中.该框架利用设备内置的硬件,在已有信号的基础上通过三角测量得到固定位置,然后将它报告给您的代码.在 ...

  3. jquery笔记(仅供个人参考)

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  4. sersync 开机自启 (仅供自己参考)

    sersync是一个实时同步的软件,,将其添加到/etc/rc.local中没有效果 ##之所以没效果是因为:####由于/etc/rc.local是/etc/rc.d/rc.local的软连接,所以 ...

  5. Delphi中TApplication详解(转仅供自己参考)

    转自:http://blog.sina.com.cn/s/blog_4d6f55d90100bmv9.html TApplication是用于Delphi应用程序的类型,该类在单元forms中声明.T ...

  6. mathJax基础语法-0基础开始,(这是网上抄来的如果有权限和版权问题联系本人处理,仅供学术参考)

  7. kinect2跑高博的orbslam2的过程(仅供自己参考记录)

    首先感谢高博的无私奉献!http://www.cnblogs.com/gaoxiang12/p/5161223.html 程序所在的目录为:/home/zty/catkin_ws/src/iai_ki ...

  8. IDEA快捷键/本文仅供自己参考使用如有侵权立删

    好好来学习学习IDEA这款神器,让你的效率飞起!视频来自慕课网 本文转载 更多技巧 代码定位 跳转: 1.IDEA的左侧侧边栏有1:Project.7:Structure和2:Favorities a ...

  9. TCP/IP网络编程之优于select的epoll(一)

    epoll的理解及应用 select复用方法由来已久,因此,利用该技术后,无论如何优化程序性能也无法同时接入上百个客户端.这种select方式并不适合以web服务端开发为主流的现代开发环境,所以要学习 ...

随机推荐

  1. 《Effective C++》内存管理

    如果global new-hander没有成功配置,会抛出一个std::bad_alloc的exception. #include<iostream> #include<new> ...

  2. Android网络框架Volley(实战篇)

      之前讲了ym—— Android网络框架Volley(体验篇),大家应该了解了volley的使用,接下来我们要看看如何把volley使用到实战项目里面,我们先考虑下一些问题: 从上一篇来看 mQu ...

  3. Linux Shell编程(20)——基本命令

    新手必须要掌握的初级命令ls基本的列出所有文件的命令.但是往往就是因为这个命令太简单,所以我们总是低估它.比如,用 -R 选项,这是递归选项,ls 将会以目录树的形式列出所有文件, 另一个很有用的选项 ...

  4. DIP开放计算平台介绍

    随着平台业务的发展,依赖于Portal(Web)构建的服务架构已逐渐不能满足现有的一些复杂需求(如:使用Hive SQL无法完成计算逻辑),而且对于一些具备编程能力的程序员或数据分析师而言,能够自主控 ...

  5. (转载)MySQL关键字GROUP BY的使用

    例子: mysql> select * from employee; +------+------+-------+------+-------+----------+ | num | d_id ...

  6. 走过而立之年的Coder

    当年,关于“程序员三十”的话题,一直充斥在耳边——大抵就是:Coder过了三十就完犊子了.干不下去了.对于新人来讲,这个话题的热度,甚至超过了语言之争的月经贴. 那些话题总结一下,大抵就是如下几种: ...

  7. openstack简易汉化

  8. galera mysql 多主复制启动顺序及命令

    Mysql 被复制机 sql启动

  9. Django中的Form

    Form 一.使用Form Django中的Form使用时一般有两种功能: 1.生成html标签 2.验证输入内容 要想使用django提供的form,要在views里导入form模块 from dj ...

  10. Google协作平台

    本博文的主要内容有 .Google协作平台的介绍 1.Google协作平台的介绍 https://zh.wikipedia.org/wiki/Google%E5%8D%8F%E4%BD%9C%E5%B ...