摘要: There are environment variables you can set to help debug memory issues on the Mac, but how do you set the environment variables or enable these flags described in NSDebug.h for iPhone development?NAME OF ENV. VARIABLE DEFAULT SET TO...NSDebugEnabled NO "YES" NSZombieEnabled ... 阅读全文
posted @ 2011-11-22 10:21 Serlina 阅读(90) 评论(0) 推荐(0) 编辑
摘要: OS 支持多个层次的多线程编程,层次越高的抽象程度越高,使用起来也越方便,也是苹果最推荐使用的方法。下面根据抽象层次从低到高依次列出iOS所支持的多线程编程范式:1, Thread;2, Cocoa operations;3, Grand Central Dispatch (GCD) (iOS4 才开始支持)下面简要说明这三种不同范式:Thread 是这三种范式里面相对轻量级的,但也是使用起来最负责的,你需要自己管理thread的生命周期,线程之间的同步。线程共享同一应用程序的部分内存空间,它们拥有对数据相同的访问权限。你得协调多个线程对同一数据的访问,一般做法是在访问之前加锁,这会导致一定的 阅读全文
posted @ 2011-10-07 18:47 Serlina 阅读(599) 评论(0) 推荐(0) 编辑
摘要: UITableView 基本使用方法 1. 首先,Controller需要实现两个 delegate ,分别是 UITableViewDelegate 和 UITableViewDataSource 2.然后 UITableView对象的 delegate要设置为 self。 3. 然后就可以实现这些delegate的一些方法拉。 (1)- (NSInteger)numberOfSectionsInTableView:(UITableView*)tableView; 这个方法返回 tableview 有多少个section view plain//返回有多少个Sections... 阅读全文
posted @ 2011-10-07 14:05 Serlina 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 多线程开发是一件需要特别精心的事情,即使是对有多年开发经验的工程师来说。为了能让初级开发工程师也能使用多线程,同时还要简化复杂性。各种编程工具提供了各自的办法。对于iOS来说,建议在尽可能的情况下避免直接操作线程,使用比如NSOperationQueue这样的机制。可以把NSOperationQueue看作一个线程池,可往线程池中添加操作(NSOperation)到队列中。线程池中的线程可看作消费者,从队列中取走操作,并执行它。你可以设置线程池中只有一个线程,这样,各个操作就可以认为是近似的顺序执行了。为什么说是近似呢,后面会做解释。编写最简单的示例先写个最简单的示例。编写一个NSOperat 阅读全文
posted @ 2011-09-29 18:09 Serlina 阅读(217) 评论(1) 推荐(0) 编辑