摘要:1.三种多线程技术1.NSThread每个NSThread对象对应一个线程,量级较轻(真正的多线程)2.以下两点是苹果专门开发的“并发”技术,使得程序员可以不再去关心线程的具体使用问题ØNSOperation/NSOperationQueue面向对象的线程技术ØGCD —— Grand Centra...
阅读全文
摘要:MRC似乎已经是一个上古时代的话题了,不过我还是绕有兴致的把它翻出来。因为,今天我被一个问题问住了:ARC与MRC的性能方面孰优劣。确实,之前没有对比过。先来做个测试吧。首先我们需要一个计时辅助函数,我选择使用mach_absolute_time,计算时间差的函数如下:doublesubtractT...
阅读全文
摘要:TCP协议与UDP协议的区别 首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信!TCP/IP协议是一个协议簇。里面包括很多协议的。UDP只是其中的一个。之所以命名为TCP/IP协议,因为...
阅读全文
摘要:1. 字符串常量NSString *s = @"test";NSLog(@"s:%d",[s retainCount]); // -1或2147483647(即UINT_MAX ( Maximum value an `unsigned int'))因为"test"为字符串常量,系统不会收回,也不会对...
阅读全文
摘要:内容链接:http://www.cocoachina.com/ios/20130520/6236.html
阅读全文
摘要:首先我们来看一下错误信息:Error Domain=AFNetworkingErrorDomain Code=-1011 "Expected status code in (200-299), got 406" { status code: 406,headers {"Content-Languag...
阅读全文
摘要:实际开发中在用SVN版本管理软件的时候回遇到一些第三方库无法上传.a文件导致项目直接报错的情况,提示未找到.a文件.这也是我在实际项目中遇到的问题,虽然你SVN可以提供一个很好的团队开发合并代码的平台,但也存在一些不让人省心的小问题,即便如此,我们依然不能拒绝使用SVN,所以只能解决他,以下就是我在...
阅读全文
摘要:1\在实际编程过程中往往需要自定义导航栏上面的按钮,也就用:- (instancetype)initWithCustomView:(UIView *)customView;但用了这个方法后可能会导致iOS7,8的手势返回失效,解决方法就是在自定义的导航栏的viewDidLoad方法中添加如下代码注意...
阅读全文
摘要://// ViewController.m// BlockTest//// Created by CoderHJChao on 8/13/15.// Copyright (c) 2015 CoderHJChao. All rights reserved.//#import "ViewCont...
阅读全文
摘要:一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。...
阅读全文
摘要:1.利用reloadRowsAtIndexPaths:withRowAnimation:来动态改变cell的高度UITableView的- (void)reloadRowsAtIndexPaths:(NSArray*)indexPathswithRowAnimation:(UITableViewRo...
阅读全文