Ev Ev::recommendedBackends
(PECL ev >= 0.2.0)
Ev::recommendedBackends — 현재 플랫폼에 권장되는 백엔드의 비트 마스크를 반환합니다.
설명
final public static Ev::recommendedBackends(): int
이 libev
바이너리로 컴파일되고 이 플랫폼에 권장되는 모든 백엔드 세트를 반환합니다. 즉, 대부분의 파일 설명자 유형에서 작동합니다. 이 세트는 종종 ev_supported_backends() 에서 반환된 것보다 작습니다. 예를 들어 kqueue
는 대부분의 BSD
시스템에서 깨져 명시적으로 요청하지 않는 한 자동 감지되지 않습니다. 이것은 libev
가 명시적으로 지정된 백엔드를 조사하지 않을 백엔드 세트입니다.
매개변수
이 함수에는 매개변수가 없습니다.
반환 값
비트 OR 연산자를 사용하여 결합된 백엔드 플래그를 포함할 수 있는 비트 마스크를 반환합니다.
Examples
예제 #1 하나의 루프를 다른 루프에 포함
<?php
/*
* Try to get an embeddable event loop and embed it into the default event loop.
* If it is impossible, use the default
* loop. The default loop is stored in $loop_hi, while the embeddable loop is
* stored in $loop_lo(which is $loop_hi in the case no embeddable loop can be
* used).
*
* Sample translated to PHP
* http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#Examples_CONTENT-9
*/
$loop_hi = EvLoop::defaultLoop();
$loop_lo = NULL;
$embed = NULL;
/*
* See if there is a chance of getting one that works
* (flags' value of 0 means autodetection)
*/
$loop_lo = Ev::embeddableBackends() & Ev::recommendedBackends()
? new EvLoop(Ev::embeddableBackends() & Ev::recommendedBackends())
: 0;
if ($loop_lo) {
$embed = new EvEmbed($loop_lo, function () {});
} else {
$loop_lo = $loop_hi;
}
?>
기타
- EvEmbed
- Ev::embeddableBackends() - 다른 이벤트 루프에 포함할 수 있는 백엔드 세트를 반환합니다.
- Ev::supportedBackends() - 현재 libev 구성에서 지원하는 백엔드 세트를 반환합니다.
- Backend flags
- Examples