lib/Loop/Loop.php
public function setTimeout(callable $cb, float $timeout)
    {
        $triggerTime = microtime(true) + ($timeout);

        if (!$this->timers) {
            // Special case when the timers array was empty.
            $this->timers[] = [$triggerTime, $cb];

            return;
        }

        // We need to insert these values in the timers array, but the timers
        // array must be in reverse-order of trigger times.
        //
        // So here we search the array for the insertion point.
        $index = count($this->timers) - 1;
        while (true) {
            if ($triggerTime < $this->timers[$index][0]) {
                array_splice(
                    $this->timers,
                    $index + 1,
                    0,
                    [[$triggerTime, $cb]]
                );
                break;
            } elseif (0 === $index) {
                array_unshift($this->timers, [$triggerTime, $cb]);
                break;
            }
            --$index;
        }
    }
public function setTimeout(callable $cb, float $timeout)
    {
        $triggerTime = microtime(true) + ($timeout);

        if (!$this->timers) {
            // Special case when the timers array was empty.
            $this->timers[] = [$triggerTime, $cb];

            return;
        }

        // We need to insert these values in the timers array, but the timers
        // array must be in reverse-order of trigger times.
        //
        // So here we search the array for the insertion point.
        $index = count($this->timers) - 1;
        while (true) {
            if ($triggerTime < $this->timers[$index][0]) {
                array_splice(
                    $this->timers,
                    $index + 1,
                    0,
                    [[$triggerTime, $cb]]
                );
                break;
            } elseif (0 === $index) {
                array_unshift($this->timers, [$triggerTime, $cb]);
                break;
            }
            --$index;
        }
    }
public function setTimeout ( callable $ cb , float $ timeout ) { $ triggerTime = microtime ( true ) + ( $ timeout ) ; if ( ! $ this -> timers ) { // Special case when the timers array was empty. $ this -> timers [ ] = [ $ triggerTime , $ cb ] ; return ; } // We need to insert these values in the timers array, but the timers // array must be in reverse-order of trigger times. // // So here we search the array for the insertion point. $ index = count ( $ this -> timers ) - 1 ; while ( true ) { if ( $ triggerTime < $ this -> timers [ $ index ] [ 0 ] ) { array_splice ( $ this -> timers , $ index + 1 , 0 , [ [ $ triggerTime , $ cb ] ] ) ; break ; } elseif ( 0 === $ index ) { array_unshift ( $ this -> timers , [ $ triggerTime , $ cb ] ) ; break ; } -- $ index ; } }
Executes a function after x seconds.
Executes a function after x seconds .