摘要: 这个程序是前段时间学习线程间同步的时候写的,利用读写锁来实现的(我感觉读写锁就是专门为这类问题而生的):[代码]看看读写锁的结构体定义:[代码]其基本上是用汇编实现的,这里说说其大体的过程:   初始化的时候,给lock赋值为0x0100 0000,也就是允许的读者的最大个数.加读锁的时候,只要这个值减1后不为负,那么就能得到 该锁。而加写锁的时候,比较这个这个值是否等于0x0100 0000,如... 阅读全文
posted @ 2010-05-19 23:27 MR_H 阅读(6306) 评论(5) 推荐(5) 编辑
摘要: 上一篇博客演示了一个最简单的进程的创建过程,这篇博客来演示一个最基础的线程的例子。corecible回复我上篇博文时说:“不过真正的项目开发中,开子进 程用的很少。大多都是线程。”其实也说得挺有道理的,因为像java这样的语言中,原生就支持线程,并提供了一套完整的通信的方案。在linux中,线程实际上就是一个轻量级的进程,因为他们都是通过调用do_fork()函数,传入不同... 阅读全文
posted @ 2010-05-19 21:46 MR_H 阅读(23625) 评论(13) 推荐(4) 编辑