code: func SharedKeyLock(lockDir string, key string) (*KeyLock, error) {
  	return createAndLock(lockDir, key, keyLockShared)
  }
docs: // SharedLock takes a co-operative (shared) lock on a key.
  // lockDir is the directory where the lock file will be created.
  // It will block if an exclusive lock is already held on the key.