code: func (dm *DRWMutex) GetLock(id, source string, timeout time.Duration) (locked bool) {
  
  	isReadLock := false
  	return dm.lockBlocking(timeout, id, source, isReadLock)
  }
docs: // GetLock tries to get a write lock on dm before the timeout elapses.
  //
  // If the lock is already in use, the calling go routine
  // blocks until either the mutex becomes available and return success or
  // more time has passed than the timeout value and return false.