- 博客(7)
- 收藏
- 关注
原创 TCP/UDP 总结
一、TCP/UDP 区别1、TCP是面向连接的,即发送数据前必须要建立连接。而UDP是面向非连接的,发送数据前不需要建立连接。所以UDP的效率更高。 2、TCP提供可靠的传输服务,即传输的数据无差错、不丢失、不重复、按序到达。UDP尽最大努力交付,但是不能保证可靠交付。 3、TCP面向字节流,实际上是把数据看成一串无结构的字节流。而UDP是面向报文的,UDP没有拥塞控制,即使网络拥塞也不会使发送
2017-05-19 11:27:23 392
原创 Ivar 与 objc_property_t区别
Ivar:表示类对象中的所有定义的全局变量 objc_property_t:表示类对象中的全局属性,即用@property定义的属性。 例子 用@property定义几个全局变量@property(nonatomic,strong)NSString *str1;@property(nonatomic,strong)NSString *str2;@property(nonatomic,str
2017-05-15 15:01:25 943
原创 scrollView无限滚动,横屏和竖屏
图片无限滚动原理: 在可见的窗口外左右各创建一个复用的imageView。 假设每个imageView宽度是width1,每当滚屏的偏移量>=width1 或者 <=0时,刷新所有的imageView即可。 几个处理的关键点是:1、滚屏的处理//滚屏滚动时的代理-(void)scrollViewDidScroll:(UIScrollView *)scrollView{}//滚屏开始拖拽时
2017-04-19 11:32:53 2951
转载 iOS GCD多线程开发
1、串行队列 dispatch_queue_t queue1 = dispatch_queue_create("com.queue", DISPATCH_QUEUE_CONCURRENT);2、并行队列dispatch_queue_t queue2 = dispatch_queue_create("queue2", DISPATCH_QUEUE_SERIAL);3、****dispatch_
2017-03-13 16:11:29 240
原创 runtime 实际应用汇总
1、进入没一个界面打印这个界面的信息 扩展UIViewController,在load方法中交换viewwillAppear方法,在新方法中打印本类信息。初次接手项目时,可以通过这个方法快速熟悉项目。+(void)load{#ifdef DEBUG Method method1 = class_getClassMethod(self, @selector(newViewwillAppe
2017-02-23 17:53:40 327
转载 IMP 和 SEL 区别
SEL:类成员的方法指针,不同于C中的函数指针,SEL只是一个编号。 IMP: 函数指针,指向我们定义的函数SEL和IMP的关系 任何继承NSObject的类都会的得到runtime的支持,在类中有一个isa指针,指向该类定义的成员组成的结构体,这个结构体是编译时编译器为(NSObject)类创建的,在这个结构体中包含一个指向父类的指针和一个Dispatch table(分发表),这个Dispa
2017-02-23 15:30:04 3986
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人