cloudwu/skynet — pull request #143 by ewentzh (2014-07-26 07:50:19+00:00)
Title: Update rwlock.h

读写锁在读线程数量多，读取很频繁的情况下，效率会变得很低：
比如在一个环境里有100个线程读，1个线程写，假如写线程获取到write锁时，有80个线程再读（以获取写锁），假如在一个4核CPU上运行，那么write锁必须等到 80/4=20个单核读操作完成后，才能继续，而且这中间的竞争会很激烈，写锁会block所有后来读操作，这些线程相当于while（1）{}；很耗CPU，如果再获取不到write锁的时候，线程主动把cpu交出去，会减少很多竞争。
普通状态下，如果写操作比较少，对性能影响有限。