Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 237 for unlocked (0.06 sec)

  1. internal/lsync/lrwmutex.go

    			}
    			time.Sleep(time.Duration(r.Float64() * float64(lockRetryInterval)))
    		}
    	}
    }
    
    // Unlock unlocks the write lock.
    //
    // It is a run-time error if lm is not locked on entry to Unlock.
    func (lm *LRWMutex) Unlock() {
    	isWriteLock := true
    	success := lm.unlock(isWriteLock)
    	if !success {
    		panic("Trying to Unlock() while no Lock() is active")
    	}
    }
    
    // RUnlock releases a read lock held on lm.
    //
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Sun Jan 02 17:15:06 UTC 2022
    - 4.8K bytes
    - Viewed (0)
  2. internal/lsync/lrwmutex_test.go

    		}
    		rl.Unlock()
    		<-wlocked
    		select {
    		case <-rlocked:
    			t.Fatal("RLocker() didn't respect the write lock")
    		default:
    		}
    		wl.Unlock()
    	}
    }
    
    // Borrowed from rwmutex_test.go
    func TestUnlockPanic(t *testing.T) {
    	defer func() {
    		if recover() == nil {
    			t.Fatalf("unlock of unlocked RWMutex did not panic")
    		}
    	}()
    	mu := NewLRWMutex()
    	mu.Unlock()
    }
    
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Sun Mar 05 04:57:35 UTC 2023
    - 7.9K bytes
    - Viewed (0)
  3. internal/dsync/drwmutex_test.go

    	defer func() {
    		if recover() == nil {
    			t.Fatalf("unlock of unlocked RWMutex did not panic")
    		}
    	}()
    	mu := NewDRWMutex(ds, "test")
    	mu.Unlock(context.Background())
    }
    
    // Borrowed from rwmutex_test.go
    func TestUnlockPanic2(t *testing.T) {
    	mu := NewDRWMutex(ds, "test-unlock-panic-2")
    	defer func() {
    		if recover() == nil {
    			t.Fatalf("unlock of unlocked RWMutex did not panic")
    		}
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Sat Dec 24 03:49:07 UTC 2022
    - 9.7K bytes
    - Viewed (0)
  4. internal/dsync/drwmutex.go

    	// to indicate we haven't sufficiently unlocked lockers to avoid deadlocks.
    	//
    	// Caller may use this as an indication to call again.
    	return !checkFailedUnlocks(*locks, tolerance)
    }
    
    // Unlock unlocks the write lock.
    //
    // It is a run-time error if dm is not locked on entry to Unlock.
    func (dm *DRWMutex) Unlock(ctx context.Context) {
    	dm.m.Lock()
    	dm.cancelRefresh()
    	dm.m.Unlock()
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Mon Sep 09 15:49:49 UTC 2024
    - 20.4K bytes
    - Viewed (0)
  5. internal/dsync/locker.go

    	// Do read unlock for given LockArgs. It should return
    	// * a boolean to indicate success/failure of the operation
    	// * an error on failure of unlock request operation.
    	// Canceling the context will abort the remote call.
    	// In that case, the resource may or may not be unlocked.
    	RUnlock(ctx context.Context, args LockArgs) (bool, error)
    
    	// Do write unlock for given LockArgs. It should return
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Tue Jan 18 20:44:38 UTC 2022
    - 2.7K bytes
    - Viewed (0)
  6. internal/dsync/dsync-server_test.go

    	}
    
    	l.mutex.Lock()
    	defer l.mutex.Unlock()
    	var locksHeld int64
    	if locksHeld, reply = l.lockMap[args.Resources[0]]; !reply { // No lock is held on the given name
    		return false, fmt.Errorf("Unlock attempted on an unlocked entity: %s", args.Resources[0])
    	}
    	if reply = locksHeld == WriteLock; !reply { // Unless it is a write lock
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Mon Jan 23 16:46:37 UTC 2023
    - 8.3K bytes
    - Viewed (0)
  7. internal/dsync/lock-args.go

    type LockArgs struct {
    	// Unique ID of lock/unlock request.
    	UID string
    
    	// Resources contains single or multiple entries to be locked/unlocked.
    	Resources []string
    
    	// Owner represents unique ID for this instance, an owner who originally requested
    	// the locked resource, useful primarily in figuring out stale locks.
    	Owner string
    
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Wed Jul 24 10:24:01 UTC 2024
    - 1.8K bytes
    - Viewed (0)
  8. internal/lock/lock_test.go

    	if err != nil {
    		t.Fatal(err)
    	}
    
    	// unlock the file
    	if err = l.Close(); err != nil {
    		t.Fatal(err)
    	}
    
    	// try lock the unlocked file
    	dupl, err := LockedOpenFile(f.Name(), os.O_WRONLY|os.O_CREATE, 0o600)
    	if err != nil {
    		t.Errorf("err = %v, want %v", err, nil)
    	}
    
    	// blocking on locked file
    	locked := make(chan struct{}, 1)
    	go func() {
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Mon Sep 19 18:05:16 UTC 2022
    - 3.6K bytes
    - Viewed (0)
  9. guava/src/com/google/common/util/concurrent/CycleDetectingLockFactory.java

     *
     * <ul>
     *   <li>for an unnested {@code lock()} and {@code unlock()}, a cycle detecting lock takes 38ns as
     *       opposed to the 24ns taken by a plain lock.
     *   <li>for nested locking, the cost increases with the depth of the nesting:
     *       <ul>
     *         <li>2 levels: average of 64ns per lock()/unlock()
     *         <li>3 levels: average of 77ns per lock()/unlock()
     *         <li>4 levels: average of 99ns per lock()/unlock()
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Fri Dec 15 19:31:54 UTC 2023
    - 35.9K bytes
    - Viewed (0)
  10. doc/go_mem.html

    call <i>n</i> of <code>l.Unlock()</code> is synchronized before call <i>m</i> of <code>l.Lock()</code> returns.
    </p>
    
    <p>
    This program:
    </p>
    
    <pre>
    var l sync.Mutex
    var a string
    
    func f() {
    	a = "hello, world"
    	l.Unlock()
    }
    
    func main() {
    	l.Lock()
    	go f()
    	l.Lock()
    	print(a)
    }
    </pre>
    
    Registered: Tue Nov 05 11:13:11 UTC 2024
    - Last Modified: Mon Mar 04 15:54:42 UTC 2024
    - 26.6K bytes
    - Viewed (0)
Back to top