Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 283 for waiters (0.13 sec)

  1. src/runtime/testdata/testprognet/waiters.go

    		}
    		defer conn.Close()
    		for i := 0; i < 10; i++ {
    			fmt.Fprintf(conn, "%d\n", i)
    			time.Sleep(time.Millisecond)
    		}
    	}()
    
    	wg.Wait()
    	if v := netpollWaiters.Load(); v != 0 {
    		log.Fatalf("current waiters %v", v)
    	}
    
    	fmt.Println("OK")
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 1.3K bytes
    - Viewed (0)
  2. src/cmd/vendor/golang.org/x/sync/semaphore/semaphore.go

    	s.mu.Unlock()
    }
    
    func (s *Weighted) notifyWaiters() {
    	for {
    		next := s.waiters.Front()
    		if next == nil {
    			break // No more waiters blocked.
    		}
    
    		w := next.Value.(waiter)
    		if s.size-s.cur < w.n {
    			// Not enough tokens for the next waiter.  We could keep going (to try to
    			// find a waiter with a smaller request), but under load that could cause
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 03 02:38:00 UTC 2024
    - 4.3K bytes
    - Viewed (0)
  3. src/runtime/sema.go

    					s.next.parent = s
    				}
    				// Add t first in s's wait list.
    				s.waitlink = t
    				s.waittail = t.waittail
    				if s.waittail == nil {
    					s.waittail = t
    				}
    				s.waiters = t.waiters
    				if s.waiters+1 != 0 {
    					s.waiters++
    				}
    				t.parent = nil
    				t.prev = nil
    				t.next = nil
    				t.waittail = nil
    			} else {
    				// Add s to end of t's wait list.
    				if t.waittail == nil {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 19K bytes
    - Viewed (0)
  4. src/runtime/sema_test.go

    				//
    				// Specifically enqueue all the waiters for the first lock,
    				// then all the waiters for the second lock.
    				//
    				// Then, dequeue all the waiters from the first lock, then
    				// the second.
    				//
    				// Each enqueue/dequeue operation should be O(1), because
    				// there are exactly 2 locks. This could be O(n) if all
    				// the waiters for both locks are on the same list, as it
    				// once was.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Jun 21 19:37:22 UTC 2022
    - 4.2K bytes
    - Viewed (0)
  5. src/sync/mutex.go

    	// the unlocking goroutine to the waiter at the front of the queue.
    	// New arriving goroutines don't try to acquire the mutex even if it appears
    	// to be unlocked, and don't try to spin. Instead they queue themselves at
    	// the tail of the wait queue.
    	//
    	// If a waiter receives ownership of the mutex and sees that either
    	// (1) it is the last waiter in the queue, or (2) it waited for less than 1 ms,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 21:14:51 UTC 2024
    - 8.4K bytes
    - Viewed (0)
  6. staging/src/k8s.io/apiserver/pkg/util/flowcontrol/fairqueuing/testing/eventclock/fake.go

    			// events to run at that or an earlier time.
    			// Events should not advance the clock.  But just in case they do...
    			now := fec.Now()
    			for len(fec.waiters) > 0 && !now.Before(fec.waiters[0].targetTime) {
    				ew := heap.Pop(&fec.waiters).(eventWaiter)
    				fec.clientWG.Add(1)
    				go func(f eventclock.EventFunc, now time.Time) {
    					f(now)
    					fec.clientWG.Add(-1)
    				}(ew.f, now)
    				foundSome = true
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Sun Dec 18 04:27:38 UTC 2022
    - 7.9K bytes
    - Viewed (0)
  7. src/sync/cond_test.go

    func TestCondSignalStealing(t *testing.T) {
    	for iters := 0; iters < 1000; iters++ {
    		var m Mutex
    		cond := NewCond(&m)
    
    		// Start a waiter.
    		ch := make(chan struct{})
    		go func() {
    			m.Lock()
    			ch <- struct{}{}
    			cond.Wait()
    			m.Unlock()
    
    			ch <- struct{}{}
    		}()
    
    		<-ch
    		m.Lock()
    		m.Unlock()
    
    		// We know that the waiter is in the cond.Wait() call because we
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 22 18:52:42 UTC 2023
    - 5K bytes
    - Viewed (0)
  8. src/sync/waitgroup.go

    	}
    	// This goroutine has set counter to 0 when waiters > 0.
    	// Now there can't be concurrent mutations of state:
    	// - Adds must not happen concurrently with Wait,
    	// - Wait does not increment waiters if it sees counter == 0.
    	// Still do a cheap sanity check to detect WaitGroup misuse.
    	if wg.state.Load() != state {
    		panic("sync: WaitGroup misuse: Add called concurrently with Wait")
    	}
    	// Reset waiters count to 0.
    	wg.state.Store(0)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 21:14:51 UTC 2024
    - 4K bytes
    - Viewed (0)
  9. android/guava/src/com/google/common/util/concurrent/AbstractFuture.java

        }
    
        /** Performs a GAS operation on the {@link #waiters} field. */
        @Override
        Waiter gasWaiters(AbstractFuture<?> future, Waiter update) {
          while (true) {
            Waiter waiter = future.waiters;
            if (update == waiter) {
              return waiter;
            }
            if (casWaiters(future, waiter, update)) {
              return waiter;
            }
          }
        }
    
    Registered: Wed Jun 12 16:38:11 UTC 2024
    - Last Modified: Fri Jun 07 22:25:23 UTC 2024
    - 63.1K bytes
    - Viewed (1)
  10. guava/src/com/google/common/util/concurrent/AbstractFuture.java

        /** Non-volatile write of the thread to the {@link Waiter#thread} field. */
        abstract void putThread(Waiter waiter, Thread newValue);
    
        /** Non-volatile write of the waiter to the {@link Waiter#next} field. */
        abstract void putNext(Waiter waiter, @CheckForNull Waiter newValue);
    
        /** Performs a CAS operation on the {@link #waiters} field. */
        abstract boolean casWaiters(
    Registered: Wed Jun 12 16:38:11 UTC 2024
    - Last Modified: Fri Jun 07 22:25:23 UTC 2024
    - 62.8K bytes
    - Viewed (1)
Back to top