Web 请求处理机制

参考书籍: 《Nginx高性能Web服务器详解》

Web 服务器和客户端是一对多的关系,Web 服务器必须有能力同时为多个客户端提供服务。一般来说,完成并行处理请求工作有三种可供选择:多进程方式、多线程方式和异步方式。

Talk is cheap

病榻之上,无以兴怀。

人类一思考,上帝就发笑。我的思考,也不过是输出些不知所云的负能量而已,所以真羡慕那些有墨水的人。

前阵子,师妹说在马赛的时候楼管大妈组织了一场party,组织者关上灯酝酿气氛开启音乐扭动身体鼓动大家躁起来的时候,学生那边默默无语,再躁再无语,三躁三无语,嗯那一刻场面应该要有乌鸦飞过吧。

UICollectionView deleteItemsAtIndexPaths

删除单元格时,执行 deleteItemsAtIndexPaths 的方法以达到动画过渡的效果;然而使用过程中可能会有这个报错:

1
Assertion failure in -[UICollectionView _endItemAnimationsWithInvalidationContext:tentativelyForReordering:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3512.30.14/UICollectionView.m:4324

LLDB 调试技巧

导入 UIKit,如图

PHP 笔记 2

正则表达式

  • 分隔符 (可以是除了字母、数字、反斜线、空格以外的任何字符,常用 #)
  • 表达式 (特殊字符和非特殊字符串组成)
  • 修饰符 (用于开启某种模式)

常用模式

  • 忽略大小写模式 (i)
  • 多行模式 (m)
  • 点号统配模式 (s)
  • 懒惰模式 (U)
  • 结尾限制 (D)
  • 支持UTF-8转义表达 (u)

Adding User Defined Runtime Attributes

作为一个IB党,布局代码能少写就少写。

对于在nib文件中不能直接设置的属性,在Runtime Attributes中进行设置。

参考链接: https://developer.apple.com/library/mac/recipes/xcode_help-interface_builder/Chapters/AddUserDefinedRuntimeAttributes.html

UITableView - HeaderView高度自适应

应对可变长度文本的情景,重写viewDidLayoutSubviews方法。

1
2
3
4
5
6
7
8
9
10
- (void)viewDidLayoutSubviews
{
[super viewDidLayoutSubviews];

CGSize size = [_headerView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize];
CGRect headerFrame = _headerView.frame;
headerFrame.size = size;
_headerView.frame = headerFrame;
[_tableView setTableHeaderView:_headerView];
}

我的回顾 - 2015

上一次写个人日志,应该是2年前了吧,那会儿还玩QQ空间。

这会儿突然有个想法,在个人网站上尝试重拾这个逝去的习惯,作为社交恐惧症患者,这些年来表达能力也越发捉急。

于是回顾一下我的2015。


凛凛岁暮

凛凛岁云暮,蝼蛄夕鸣悲。

PHP 笔记 1

魔术方法

  • __construct 构造方法
  • __set 重载set方法
  • __get 重载get方法

SSLRead return error

参考链接: http://stackoverflow.com/questions/30385939/git-clone-fails-with-sslread-error-on-os-x-yosemite