7年游戏服务器开发,擅长c/c++,javesript,php;熟悉linux,mysql/redis,elasticsearch;开源爱好者.github : https://github.com/yuyunliuhen
全部博文(26)
发布时间:2013-04-22 22:50:34
在多线程程序中,有一种读写者的问题,即对某些资源的访问,存在两种可能的情况,一种是访问必须排他的,称为写操作;另外一种访问是可共享的,称为读操作。 处理读写着问题的两种常见策略是:强读者同步和强写者同步。在强读者同步过程中,总是给读者优先权,只要写着当前没有进行写操.........【阅读全文】
发布时间:2013-05-11 18:35:57
自旋锁(spinlock)是一种常用的互斥同步原语,当试图进入临界区的线程使用忙等待的方式检测锁的状态,若锁未被持有则尝试获取。这种忙等待的做法无谓的消耗了处理器资源,故只适合用于临界区非常小的代码片段,如linux下的中断处理函数。 posix 已经实现了自旋锁.........【阅读全文】
发布时间:2013-05-19 20:11:39
读写旋转锁是旋转锁的变种,与一般自旋锁不同的是,自旋锁一次只能一个线程进入临界区,而读写旋转锁,可以同时存在多个读者,最多一个写者。 下面分析下linux源码中读写旋转锁的实现方式: 点击(此处)折叠或打开.........【阅读全文】
发布时间:2013-05-15 22:05:40
FAQ1 变量$#,$@$0,$1...$n 的解释$$ shell本身的pid; $!最后运行的命名行代码;$?最后运行的命令的结束代码;$-使用set命令设定的flag一览;$* 代表『"$1 $2 $3 $4",中间默认为空格符; $@ 代.........【阅读全文】