Search Options

Results per page
Sort
Preferred Languages
Advance

Results 21 - 30 of 85 for wakep (0.05 sec)

  1. src/runtime/os_linux.go

    // Linux futex.
    //
    //	futexsleep(uint32 *addr, uint32 val)
    //	futexwakeup(uint32 *addr)
    //
    // Futexsleep atomically checks if *addr == val and if so, sleeps on addr.
    // Futexwakeup wakes up threads sleeping on addr.
    // Futexsleep is allowed to wake up spuriously.
    
    const (
    	_FUTEX_PRIVATE_FLAG = 128
    	_FUTEX_WAIT_PRIVATE = 0 | _FUTEX_PRIVATE_FLAG
    	_FUTEX_WAKE_PRIVATE = 1 | _FUTEX_PRIVATE_FLAG
    )
    
    // Atomically,
    //
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 25.9K bytes
    - Viewed (0)
  2. src/runtime/time.go

    	ts.lock()
    	ts.cleanHead()
    	t.lock()
    	t.trace("maybeAdd")
    	when := int64(0)
    	wake := false
    	if t.needsAdd() {
    		t.state |= timerHeaped
    		when = t.when
    		wakeTime := ts.wakeTime()
    		wake = wakeTime == 0 || when < wakeTime
    		ts.addHeap(t)
    	}
    	t.unlock()
    	ts.unlock()
    	releasem(mp)
    	if wake {
    		wakeNetPoller(when)
    	}
    }
    
    // reset resets the time when a timer should fire.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Mar 29 14:36:24 UTC 2024
    - 37.5K bytes
    - Viewed (0)
  3. src/context/example_test.go

    			// If multiple goroutines are waiting on cond simultaneously,
    			// we need to make sure we wake up exactly this one.
    			// That means that we need to Broadcast to all of the goroutines,
    			// which will wake them all up.
    			//
    			// If there are N concurrent calls to waitOnCond, each of the goroutines
    			// will spuriously wake up O(N) other goroutines that aren't ready yet,
    			// so this will cause the overall CPU cost to be O(N²).
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Aug 21 20:24:28 UTC 2023
    - 6.7K bytes
    - Viewed (0)
  4. src/runtime/abi_test.go

    	// cause a crash, but because we're running in a separate process
    	// it's extremely unlikely.
    	runtime.GC()
    	runtime.GC()
    
    	// fing will only pick the new IntRegArgs up if it's currently
    	// sleeping and wakes up, so wait for it to go to sleep.
    	success := false
    	for i := 0; i < 100; i++ {
    		if runtime.FinalizerGAsleep() {
    			success = true
    			break
    		}
    		time.Sleep(20 * time.Millisecond)
    	}
    	if !success {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 3.1K bytes
    - Viewed (0)
  5. src/runtime/netpoll_kqueue_pipe.go

    import "unsafe"
    
    // TODO(panjf2000): NetBSD didn't implement EVFILT_USER for user-established events
    // until NetBSD 10.0, check out https://www.netbsd.org/releases/formal-10/NetBSD-10.0.html
    // Therefore we use the pipe to wake up the kevent on NetBSD at this point. Get back here
    // and switch to EVFILT_USER when we bump up the minimal requirement of NetBSD to 10.0.
    // Alternatively, maybe we can use EVFILT_USER on the NetBSD by checking the kernel version
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 12 21:17:22 UTC 2024
    - 2.1K bytes
    - Viewed (0)
  6. test/chanlinear.go

    				for j := 0; j < messages; j++ {
    					// queue ourselves on the global channel
    					select {
    					case <-c:
    					case <-d:
    					}
    				}
    			}()
    		}
    		for i := 0; i < messages; i++ {
    			// wake each goroutine up, forcing it to dequeue and then enqueue
    			// on the global channel.
    			for _, d := range a {
    				d <- true
    			}
    		}
    	})
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 19 23:33:25 UTC 2023
    - 2.1K bytes
    - Viewed (0)
  7. src/runtime/runtime2.go

    // previous notesleep has returned, e.g. it's disallowed
    // to call noteclear straight after notewakeup.
    //
    // notetsleep is like notesleep but wakes up after
    // a given number of nanoseconds even if the event
    // has not yet happened.  if a goroutine uses notetsleep to
    // wake up early, it must wait to call noteclear until it
    // can be sure that no other goroutine is calling
    // notewakeup.
    //
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:57:37 UTC 2024
    - 47.9K bytes
    - Viewed (0)
  8. src/internal/trace/trace_test.go

    				t.Logf("%d: %q", samples, stack)
    			}
    			t.Logf("CPU profile:\n%s", stderr)
    		}
    	})
    }
    
    func TestTraceFutileWakeup(t *testing.T) {
    	testTraceProg(t, "futile-wakeup.go", func(t *testing.T, tb, _ []byte, _ bool) {
    		// Check to make sure that no goroutine in the "special" trace region
    		// ends up blocking, unblocking, then immediately blocking again.
    		//
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 17 18:48:18 UTC 2024
    - 18.5K bytes
    - Viewed (0)
  9. src/runtime/netpoll_epoll.go

    }
    
    func netpollarm(pd *pollDesc, mode int) {
    	throw("runtime: unused")
    }
    
    // netpollBreak interrupts an epollwait.
    func netpollBreak() {
    	// Failing to cas indicates there is an in-flight wakeup, so we're done here.
    	if !netpollWakeSig.CompareAndSwap(0, 1) {
    		return
    	}
    
    	var one uint64 = 1
    	oneSize := int32(unsafe.Sizeof(one))
    	for {
    		n := write(netpollEventFd, noescape(unsafe.Pointer(&one)), oneSize)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 4.6K bytes
    - Viewed (0)
  10. src/runtime/select.go

    			} else {
    				c.recvq.dequeueSudoG(sglist)
    			}
    		}
    		sgnext = sglist.waitlink
    		sglist.waitlink = nil
    		releaseSudog(sglist)
    		sglist = sgnext
    	}
    
    	if cas == nil {
    		throw("selectgo: bad wakeup")
    	}
    
    	c = cas.c
    
    	if debugSelect {
    		print("wait-return: cas0=", cas0, " c=", c, " cas=", cas, " send=", casi < nsends, "\n")
    	}
    
    	if casi < nsends {
    		if !caseSuccess {
    			goto sclose
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 13 21:36:04 UTC 2024
    - 15K bytes
    - Viewed (0)
Back to top