- 博客(8)
- 资源 (2)
- 收藏
- 关注
原创 文章标题
YYCache1. 线程安全有多重方法可以保证线程安全。TMMemoryCache 在设计时,把所有读写操作都放到了同一个 concurrent queue 中,然后用dispatch_barrier_async 来保证任务能顺序执行,据说这种方法会有多余的线程开销。 YYCache则采用了不同的方式,在memoryCache中采用互斥锁pthread_mutex_t,在DiskCachez中用d
2016-02-25 03:42:59 305
原创 开源项目 FDTemplateLayoutCell研究
iOS泛型可以指定容器中的对象类型,没有用任何的iOS runtime,纯编译器层面语法支持(llvm7.0,Xcode7以上),因此写好的程序可以在更低版本的iOS版本上愉快地跑起来。NSArray<NSString *> *strings = @[@"sun", @"yuan"]; NSDictionary<NSString *, NSNumber *> *mapping = @{@"a": @
2016-02-22 17:50:11 740
原创 mac 下 zsh配置
MAC 下 zsh 配置mac下自带多种shell, 默认 bash, 但是现在事实上最方便的是 zsh.本篇记录一下怎样切换和配置 zsh查看mac下所包含shellcat /etc/shells切换成zshchsh -s /bin/zsh 或者 chsh -s which zsh配置zshzsh很强大,但是也很难配置。不过我们可以借助开源 git clone git://github.com
2016-02-19 16:01:58 926
原创 动态规划算法之矩阵连乘 及最长公共字符串多种解法源码
动态规划算法是一种常见的较高级算法,又叫DP算法,其本质是动态查表,和递归分治的区别是,其子问题具有相关性,且具有最优子结构,因此需要表格进行记录。下面的例子是动态规划中的典型问题:矩阵连乘。 计算三个矩阵连乘{A1,A2,A3};维数分别为10*100 , 100*5 , 5*50 按此顺序计算需要的次数((A1*A2)*A3):10X100X5+10X5X50=7500次 按此顺序计
2012-12-17 01:24:04 497
原创 UITableview
在我看来 UITableView 可以说是最重要的IOS控件了,没有之一了,基本稍微复杂一些的数据展示都会用到.下面是对最近使用的一些总结。 UITableView 由section 和 cell组成,需要用户自己实现其两个代理(一个关于dataSource ,另一个是关于一些behavior 的响应行为),比较典型的是有几个section,每个section几个cell, 也可以自己定制某个s
2012-12-14 01:54:41 442
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人