自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 结合C函数理解网络中的Socket、TCP、UDP。

首先我们在用C语言建立Socket链接通讯前先简单介绍一下 网络通讯的三要素、网络模型、UDP、TCP:网络通讯的三要素:1、IP地址。网路中设备的标示。 2、端口号。用于标示进程的逻辑地址,不同进程的标示,有效端口 0~65535。 3、传输协议。例如TCP、UDP等等协议。OSI网络模型:从上到下:应用层(信息显示在app上) --> 表示层(对文件类型处理,...

2017-11-02 13:15:51 350

转载 使用GCD处理几个线程之间的依赖关系。

有时候我们在开发过程中,会有这样的需求,a任务开始执行的前提是b任务执行完成,c任务开始执行需要等a、b两个异步任务完成,即a依赖于b,c又依赖a,这种需求我们可以使用的GCD来处理。

2017-10-31 21:16:37 4000

原创 KVO原理及自定义KVO

首先我们先介绍KVO的底层实现原理:    我们注册监听的时候,会对注册者动态的创建一个子类对象,然后底层找方法的的isa指针就变成指向新创建的子类对象。当改变注册对象某个属性的时候,就重写属性的set方法来进行监听。这么说可能理解上不是很明白,下面我们结合代码来分析:我们常见一个Person对象是继承与NSObject,有一个name属性。我们把Person的类对象的name

2017-10-31 15:04:14 10092 1

原创 runtime简单介绍

runtime: 称之为运行时,Xcode5开始,苹果建议使用runtime, runtime是OC的底层是实现,也就是说我们平时写的OC代码通过runtime形式都变成C语言代码去执行了。例如:Person * p =[[Person alloc]init];最后转化成    Person * p = objc_msgSend([Person class], @selecto

2017-10-31 09:01:59 346

原创 runLoop的运用

runLoop称之为运行循环。我们知道应用程序刚启动的时候就会自动调用main函数,然后main函数中直接返回return,从代码层面上理解,既然renturn了,我们程序为什么一直没有退出呢?这就是runLoop做的事了,开启了一个runLoop,相当于一个死循环,保证了程序不退出。return UIApplicationMain(argc, argv, nil, NSStringFro

2017-10-25 12:30:45 222

原创 谈谈Block作为属性、方法参数、方法的返回值的应用

在IOS开发中block常用于作为对象的属性、作为方法的参数、作为方法的返回值。首先需要了解一下block的标准书写格式: returnType(^blockName)(parameterTypes) = ^returnType(parameters) {    statements  };下面我们结合代码对几种情况作介绍。一、b

2017-10-25 10:41:25 2131

原创 MD5在IOS中的应用场景

首先MD5是密码学中很经典的一种算法。说起密码学,它是一门很深、用途领域很广的学科,国家机密文件、军事领域等等都有用到密码学。上世纪70年代出现了一个非常伟大的加密算法ASA(这是三个人的名字简写)。ASA-加密算法:该算法是公开的。特点:1.公钥加密,私钥解密   2.私钥加密,公钥解密。破解方式:因式分解,但是一般需要很长的时间,很难破解。介绍一下开发中常用

2017-10-24 15:37:56 681

转载 理解GCD中任务和队列执行的原理

我们都知道IOS中常用于处理线程的三种方式:NSThread、NSOperation、GCD,而GCD有很好的的优点就是不需要我们来处理runLoop的运行循环,它是一套基于C的并发编程(但是强调一下GCD并不能理解为多线程,因为这个并不是自己来控制线程),我们在使用的时候是不需要管理线程的任何生命周期,系统会自动帮我们管理。在底层是有一个任务队列与线程池的概念,如果任务队列与线程池的认识有点模糊

2017-10-23 22:24:07 749

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除