라이브러리

[PHP] SwooleServer::clearTimer - 타이머를 중지하고 파괴합니다.




SwooleServer::clearTimer


SwooleServer::clearTimer는 Swoole의 Timer 기능을 사용하여 설정된 타이머를 취소하는 메소드입니다. 타이머는 특정 시간 후에 호출할 함수를 등록할 수 있습니다. 이 메소드는 등록된 타이머를 취소하여 더 이상 호출되지 않도록 합니다.

# 타이머 등록


타이머를 등록하는 방법은 다음과 같습니다.

#hostingforum.kr
php

$serv = new swoole_server('0.0.0.0', 9501);



$serv->on('start', function ($serv) {

    $serv->tick(1000, function () {

        echo "타이머가 호출되었습니다.
";

    });

});



$serv->start();



위 예제에서는 `swoole_server` 객체를 생성하고 `on` 메소드를 사용하여 `start` 이벤트를 등록합니다. `tick` 메소드를 사용하여 1초마다 호출할 함수를 등록합니다.

# 타이머 취소


타이머를 취소하는 방법은 다음과 같습니다.

#hostingforum.kr
php

$serv = new swoole_server('0.0.0.0', 9501);



$serv->on('start', function ($serv) {

    $timer_id = $serv->tick(1000, function () {

        echo "타이머가 호출되었습니다.
";

    });

    $serv->clearTimer($timer_id);

});



$serv->start();



위 예제에서는 `tick` 메소드를 사용하여 타이머를 등록하고, 등록된 타이머의 ID를 `$timer_id` 변수에 저장합니다. 그리고 `clearTimer` 메소드를 사용하여 타이머를 취소합니다.

# 타이머 취소 예제


타이머를 등록하고 취소하는 예제는 다음과 같습니다.

#hostingforum.kr
php

$serv = new swoole_server('0.0.0.0', 9501);



$serv->on('start', function ($serv) {

    $timer_id1 = $serv->tick(1000, function () {

        echo "타이머 1이 호출되었습니다.
";

    });

    $timer_id2 = $serv->tick(2000, function () {

        echo "타이머 2가 호출되었습니다.
";

    });

    $serv->clearTimer($timer_id1);

    echo "타이머 1이 취소되었습니다.
";

    $serv->clearTimer($timer_id2);

    echo "타이머 2가 취소되었습니다.
";

});



$serv->start();



위 예제에서는 두 개의 타이머를 등록하고, 1초 후에 타이머 1을 취소하고, 2초 후에 타이머 2를 취소합니다.

# 참고


* `swoole_server` 객체의 `tick` 메소드는 1초 단위로 호출할 함수를 등록할 수 있습니다. 타이머를 등록한 후에 `clearTimer` 메소드를 사용하여 취소할 수 있습니다.
* `clearTimer` 메소드는 타이머의 ID를 인수로 받습니다. 타이머를 취소할 때에는 ID를 정확하게 입력해야 합니다.
* 타이머를 취소한 후에 다시 타이머를 등록할 수 있습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 96 페이지

검색

게시물 검색