Ev EvPeriodic::__construct
(PECL ev >= 0.2.0)
EvPeriodic::__construct — EvPeriodic 감시자 객체를 생성합니다.
설명
public EvPeriodic::__construct( float $offset , string $interval , callable $reschedule_cb , callable $callback , mixed $data = null , int $priority = 0 )
EvPeriodic 감시자 개체를 생성하고 자동으로 시작합니다. EvPeriodic::createStopped() 메서드는 중지된 주기적 감시자를 만듭니다.
매개변수
offset
- Periodic watcher operation modes 참조
interval
- Periodic watcher operation modes 참조
reschedule_cb
- 콜백 일정을 조정합니다.
null
을 전달할 수 있습니다. Periodic watcher operation modes 참조 callback
- Watcher callbacks을 참조하십시오.
data
- 감시자와 연결된 사용자 지정 데이터입니다.
priority
- Watcher priority
Examples
예제 #1 Periodic timer. Use reschedule callback
<?php
// Tick each 10.5 seconds
function reschedule_cb ($watcher, $now) {
return $now + (10.5. - fmod($now, 10.5));
}
$w = new EvPeriodic(0., 0., "reschedule_cb", function ($w, $revents) {
echo time(), PHP_EOL;
});
Ev::run();
?>
예제 #2 Periodic timer. Tick every 10.5 seconds starting at now
<?php
// Tick every 10.5 seconds starting at now
$w = new EvPeriodic(fmod(Ev::now(), 10.5), 10.5, NULL, function ($w, $revents) {
echo time(), PHP_EOL;
});
Ev::run();
?>
예제 #3 Hourly watcher
<?php
$hourly = EvPeriodic(0, 3600, NULL, function () {
echo "once per hour\n";
});
?>
기타
- Periodic watcher operation modes
- EvTimer
- EvPeriodic::createStopped() - 중지된 EvPeriodic 감시자 만들기