Improve membuffer cache scalability by replacing the per-segment mutexes with r/w locks.
Improve membuffer cache scalability by replacing the per-segment
mutexes with r/w locks.

* subversion/libsvn_subr/cache-membuffer.c
  (svn_membuffer_t): replace the lock type
  (read_lock_cache, write_lock_cache, unlock_cache,
   WITH_READ_LOCK, WITH_WRITE_LOCK): new locking utilities
  (svn_cache__membuffer_cache_create): adapt lock init code
  (membuffer_cache_set, membuffer_cache_get,
   membuffer_cache_get_partial, membuffer_cache_set_partial, 
   svn_membuffer_cache_get_info): replace lock macros


git-svn-id: f8a4e5e023278da1e04e203c7fe051e3c4285d88@1346122 13f79535-47bb-0310-9956-ffa450edef68

YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion