Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 2 of 2 for DRLocker (0.03 sec)

  1. internal/lsync/lrwmutex.go

    	lm.ref = 0
    	lm.isWriteLock = false
    }
    
    // DRLocker returns a sync.Locker interface that implements
    // the Lock and Unlock methods by calling drw.RLock and drw.RUnlock.
    func (lm *LRWMutex) DRLocker() sync.Locker {
    	return (*drlocker)(lm)
    }
    
    type drlocker LRWMutex
    
    func (dr *drlocker) Lock()   { (*LRWMutex)(dr).RLock() }
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Sun Jan 02 17:15:06 UTC 2022
    - 4.8K bytes
    - Viewed (0)
  2. internal/lsync/lrwmutex_test.go

    }
    
    // Borrowed from rwmutex_test.go
    func TestDRLocker(t *testing.T) {
    	wl := NewLRWMutex()
    	var rl sync.Locker
    	wlocked := make(chan bool, 1)
    	rlocked := make(chan bool, 1)
    	rl = wl.DRLocker()
    	n := 10
    	go func() {
    		for range n {
    			rl.Lock()
    			rl.Lock()
    			rlocked <- true
    			wl.Lock()
    			wlocked <- true
    		}
    	}()
    	for range n {
    		<-rlocked
    		rl.Unlock()
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Sun Sep 28 20:59:21 UTC 2025
    - 7.8K bytes
    - Viewed (0)
Back to top