it-swarm.com.de

Unterschied zwischen sleep () und usleep () in PHP

Kann mir jeder Body erklären, was der Unterschied zwischen sleep() und usleep() in PHP ist.

Ich habe angewiesen, die folgenden Skripts zu verwenden, um die Chat-Anwendung für langes Ziehen auszuführen, aber in diesem Skript erhalte ich denselben Effekt, wenn usleep(25000); oder ohne usleep(25000); verwendet wird.

page1.php

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" 
       type="text/javascript"></script>

<script>
var lpOnComplete = function(response) {
    console.log(response);
    // do more processing
    lpStart();
};

var lpStart = function() {
    $.post('page2.php', {}, lpOnComplete, 'json');
};

$(document).ready(lpStart);
</script>

page2.php

<?php
$time = time();
while((time() - $time) < 30) {
    // query memcache, database, etc. for new data
    $data = getLatest();

    // if we have new data return it
    if(!empty($data)) {
        echo json_encode($data);
        break;
    }

    usleep(25000);
}

function getLatest() {
    sleep(2);
    return "Test Data"; 
}
?>
21
Salim

Das Argument für sleep ist Sekunden, das Argument für usleep Mikrosekunden. Abgesehen davon denke ich, dass sie identisch sind.

sleep($n) == usleep($n * 1000000)

usleep(25000) schläft nur 0,025 Sekunden lang.

40
Barmar

Mit sleep() kann Ihr Code in Sekundenschnelle in den Ruhezustand versetzt werden.

  • sleep(5); // sleeps for 5 seconds

usleep() ermöglicht Ihren Code in Bezug auf Mikrosekunden.

  • usleep(2500000); // sleeps for 2.5 seconds
5
Ashwin

usleep() wird verwendet, um die Ausführung in "Mikrosekunden" zu verzögern, während sleep() verwendet wird, um die Ausführung in Sekunden zu verzögern .__ usleep(25000) beträgt 0,025 Sekunden. 

Is there any difference between the two?
2
shahpranaf

Einfach

usleep verwendet CPU Cycles während sleep nicht tut.

sleep nimmt seconds als Argument

während usleepmicroseconds als Argument nimmt

1
Matee Gojra

Ein weiterer Unterschied ist, dass der Ruhezustand 0 bei Erfolg zurückgibt und bei einem Fehler falsch. usleep gibt nichts zurück.

0
Nick Walsh