Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 181 for lockedm (0.13 sec)

  1. src/runtime/debugcall.go

    		// Transfer locked-ness to the new goroutine.
    		// Save lock state to restore later.
    		mp := gp.m
    		if mp != gp.lockedm.ptr() {
    			throw("inconsistent lockedm")
    		}
    		// Save the external lock count and clear it so
    		// that it can't be unlocked from the debug call.
    		// Note: we already locked internally to the thread,
    		// so if we were locked before we're still locked now.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 05 20:50:21 UTC 2024
    - 7.1K bytes
    - Viewed (0)
  2. src/runtime/coro.go

    		casgstatus(gnext, _Gwaiting, _Grunnable)
    		casgstatus(gnext, _Grunnable, _Grunning)
    	}
    
    	// Donate locked state.
    	if locked {
    		mp.lockedg.set(gnext)
    		gnext.lockedm.set(mp)
    	}
    
    	// Release the trace locker. We've completed all the necessary transitions..
    	if trace.ok() {
    		traceRelease(trace)
    	}
    
    	// Switch to gnext. Does not return.
    	gogo(&gnext.sched)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 19:09:18 UTC 2024
    - 7.4K bytes
    - Viewed (0)
  3. src/runtime/export_debug_test.go

    // will send SIGTRAP to thread ID tid. gp must be locked to its OS thread and
    // running.
    //
    // On success, InjectDebugCall returns the panic value of fn or nil.
    // If fn did not panic, its results will be available in args.
    func InjectDebugCall(gp *g, fn any, regArgs *abi.RegArgs, stackArgs any, tkill func(tid int) error, returnOnUnsafePoint bool) (any, error) {
    	if gp.lockedm == 0 {
    		return nil, plainError("goroutine not locked to thread")
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 17 15:41:45 UTC 2024
    - 5.1K bytes
    - Viewed (0)
  4. src/sync/rwmutex_test.go

    	var wl RWMutex
    	var rl Locker
    	wlocked := make(chan bool, 1)
    	rlocked := make(chan bool, 1)
    	rl = wl.RLocker()
    	n := 10
    	go func() {
    		for i := 0; i < n; i++ {
    			rl.Lock()
    			rl.Lock()
    			rlocked <- true
    			wl.Lock()
    			wlocked <- true
    		}
    	}()
    	for i := 0; i < n; i++ {
    		<-rlocked
    		rl.Unlock()
    		select {
    		case <-wlocked:
    			t.Fatal("RLocker() didn't read-lock it")
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Oct 29 17:13:13 UTC 2021
    - 4.9K bytes
    - Viewed (0)
  5. internal/lsync/lrwmutex_test.go

    	wl := NewLRWMutex()
    	var rl sync.Locker
    	wlocked := make(chan bool, 1)
    	rlocked := make(chan bool, 1)
    	rl = wl.DRLocker()
    	n := 10
    	go func() {
    		for i := 0; i < n; i++ {
    			rl.Lock()
    			rl.Lock()
    			rlocked <- true
    			wl.Lock()
    			wlocked <- true
    		}
    	}()
    	for i := 0; i < n; i++ {
    		<-rlocked
    		rl.Unlock()
    		select {
    		case <-wlocked:
    			t.Fatal("RLocker() didn't read-lock it")
    Registered: Sun Jun 16 00:44:34 UTC 2024
    - Last Modified: Sun Mar 05 04:57:35 UTC 2023
    - 7.9K bytes
    - Viewed (0)
  6. internal/dsync/locker.go

    	String() string
    
    	// Close closes any underlying connection to the service endpoint
    	Close() error
    
    	// Is the underlying connection online? (is always true for any local lockers)
    	IsOnline() bool
    
    	// Is the underlying locker local to this server?
    	IsLocal() bool
    Registered: Sun Jun 16 00:44:34 UTC 2024
    - Last Modified: Tue Jan 18 20:44:38 UTC 2022
    - 2.7K bytes
    - Viewed (0)
  7. src/runtime/lock_sema.go

    					break
    				}
    				v = atomic.Loaduintptr(&l.key)
    				if v&locked == 0 {
    					continue Loop
    				}
    			}
    			if v&locked != 0 {
    				// Queued. Wait.
    				semasleep(-1)
    				i = 0
    			}
    		}
    	}
    }
    
    func unlock(l *mutex) {
    	unlockWithRank(l)
    }
    
    // We might not be holding a p in this code.
    //
    //go:nowritebarrier
    func unlock2(l *mutex) {
    	gp := getg()
    	var mp *m
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:57:37 UTC 2024
    - 6.8K bytes
    - Viewed (0)
  8. internal/dsync/drwmutex_test.go

    	expected := true
    	if locked != expected {
    		t.Errorf("TestSimpleWriteLockAcquired(): \nexpected %#v\ngot      %#v", expected, locked)
    	}
    }
    
    func TestSimpleWriteLockTimedOut(t *testing.T) {
    	locked := testSimpleWriteLock(t, testDrwMutexAcquireTimeout)
    
    	expected := false
    	if locked != expected {
    		t.Errorf("TestSimpleWriteLockTimedOut(): \nexpected %#v\ngot      %#v", expected, locked)
    	}
    }
    
    Registered: Sun Jun 16 00:44:34 UTC 2024
    - Last Modified: Sat Dec 24 03:49:07 UTC 2022
    - 9.7K bytes
    - Viewed (0)
  9. internal/lsync/lrwmutex.go

    			lm.ref = 1
    			lm.isWriteLock = true
    			locked = true
    		}
    	} else {
    		if !lm.isWriteLock {
    			lm.ref++
    			locked = true
    		}
    	}
    
    	return locked
    }
    
    const (
    	lockRetryInterval = 50 * time.Millisecond
    )
    
    // lockLoop will acquire either a read or a write lock
    //
    // The call will block until the lock is granted using a built-in
    // timing randomized back-off algorithm to try again until successful
    Registered: Sun Jun 16 00:44:34 UTC 2024
    - Last Modified: Sun Jan 02 17:15:06 UTC 2022
    - 4.8K bytes
    - Viewed (0)
  10. internal/lock/lock.go

    // open file descriptor.
    package lock
    
    import (
    	"errors"
    	"os"
    	"sync"
    )
    
    // ErrAlreadyLocked is returned if the underlying fd is already locked.
    var ErrAlreadyLocked = errors.New("file already locked")
    
    // RLockedFile represents a read locked file, implements a special
    // closer which only closes the associated *os.File when the ref count.
    // has reached zero, i.e when all the readers have given up their locks.
    Registered: Sun Jun 16 00:44:34 UTC 2024
    - Last Modified: Sun Jan 02 17:15:06 UTC 2022
    - 2.5K bytes
    - Viewed (0)
Back to top