(whh仅供自己参考)进行ip网络请求的步骤
这个过程大致是这个样子:
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网络请求的步骤的更多相关文章
- python爬虫抖音 个人资料 仅供学习参考 切勿用于商业
本文仅供学习参考 切勿用于商业 本次爬取使用fiddler+模拟器(下载抖音APP)+pycharm 1. 下载最新版本的fiddler(自行百度下载),以及相关配置 1.1.依次点击,菜单栏-Too ...
- ios的位置和方向(来自苹果官方文档,仅供简单参考)
取得用户的当前位置 Core Location框架使您可以定位设备的当前位置,并将这个信息应用到程序中.该框架利用设备内置的硬件,在已有信号的基础上通过三角测量得到固定位置,然后将它报告给您的代码.在 ...
- jquery笔记(仅供个人参考)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- sersync 开机自启 (仅供自己参考)
sersync是一个实时同步的软件,,将其添加到/etc/rc.local中没有效果 ##之所以没效果是因为:####由于/etc/rc.local是/etc/rc.d/rc.local的软连接,所以 ...
- Delphi中TApplication详解(转仅供自己参考)
转自:http://blog.sina.com.cn/s/blog_4d6f55d90100bmv9.html TApplication是用于Delphi应用程序的类型,该类在单元forms中声明.T ...
- mathJax基础语法-0基础开始,(这是网上抄来的如果有权限和版权问题联系本人处理,仅供学术参考)
- kinect2跑高博的orbslam2的过程(仅供自己参考记录)
首先感谢高博的无私奉献!http://www.cnblogs.com/gaoxiang12/p/5161223.html 程序所在的目录为:/home/zty/catkin_ws/src/iai_ki ...
- IDEA快捷键/本文仅供自己参考使用如有侵权立删
好好来学习学习IDEA这款神器,让你的效率飞起!视频来自慕课网 本文转载 更多技巧 代码定位 跳转: 1.IDEA的左侧侧边栏有1:Project.7:Structure和2:Favorities a ...
- TCP/IP网络编程之优于select的epoll(一)
epoll的理解及应用 select复用方法由来已久,因此,利用该技术后,无论如何优化程序性能也无法同时接入上百个客户端.这种select方式并不适合以web服务端开发为主流的现代开发环境,所以要学习 ...
随机推荐
- bzoj2821
其实和bzoj2724是一样的都是先处理多个块的答案,然后多余部分暴力空间要注意一下,还是O(nsqrt(n)); ..,..] of longint; g:..,..] of longint; a, ...
- C#验证码
using System; using System.Drawing; using System.Drawing.Drawing2D; using System.Drawing.Imaging; us ...
- linux安装JDK TOMCAT
1.下载包 到http://apr.apache.org/下载下面3个包 apr-1.4.2.tar.gz apr-iconv-1.2.1.tar.gz apr-util-1.3.10.tar.gz ...
- Linux学习笔记16——wait函数
wait函数的定义如下: #include <sys/types.h> #include <sys/wait.h> pid_t wait(int *stat_loc); wai ...
- 【转】如何使用Unity创造动态的2D水体效果
原文:http://gamerboom.com/archives/83080 作者:Alex Rose 在本篇教程中,我们将使用简单的物理机制模拟一个动态的2D水体.我们将使用一个线性渲染器.网格渲染 ...
- HDOJ 2030 汉字统计
Problem Description 统计给定文本文件中汉字的个数. Input 输入文件首先包含一个整数n,表示测试实例的个数,然后是n段文本. Output 对于每一段文本,输出其中的汉字的个数 ...
- Eclipse 为jar包加入 Java Source和Javadoc(如何向Eclipse中导入源码和doc)
: 当我们在MyEclipse中加入Struct,只是引入了jar包,这时使用jar包里面的类,是无法看到源码的,看到的只是这样 是反编译后的一些东西 加入源码 那么如果看到源码呢,就需要导入了 找到 ...
- ADO.NET对象模型
ADO.NET建立在NetFramwork一些核心类的基础之上,可以将这些类分为两组:用于包含于管理数据的容器类与用于连接特定数据源的控制类. 容器类是通用的,无论使用什么样的数据源,都可以使用相同的 ...
- 规则引擎QLExpress的简单应用
QLExpress 是一个轻量级的类java语法规则引擎,作为一个嵌入式规则引擎在业务系统中使用.让业务规则定义简便而不失灵活.让业务人员就可以定义业务规则.支持标 准的JAVA语法,还可以支持自定义 ...
- hdu4348 - To the moon 可持久化线段树 区间修改 离线处理
法一:暴力! 让干什么就干什么,那么久需要可持久化线段树了. 但是空间好紧.怎么破? 不down标记好了! 每个点维护sum和add两个信息,sum是这段真实的和,add是这段整体加了多少,如果这段区 ...