라이브러리
[PHP] EventBufferEvent::__construct - EventBufferEvent 객체를 생성합니다.
EventBufferEvent::__construct
EventBufferEvent은 PHP의 Event Extension의 일부로, 이벤트 버퍼를 사용하여 비동기 I/O를 처리하는 데 사용됩니다. EventBufferEvent::__construct는 이벤트 버퍼를 생성하는 데 사용되는 생성자입니다.
# 생성자 인수
EventBufferEvent::__construct는 다음과 같은 인수를 받습니다.
* `$fd`: 이벤트를 발생시키는 파일 디스크립터입니다.
* `$type`: 이벤트 타입입니다. `Event::READABLE` 또는 `Event::WRITABLE` 중 하나입니다.
* `$persistent`: 이벤트 버퍼가 영구적인지 여부를 나타내는 boolean 값입니다.
# 예제
다음 예제는 EventBufferEvent::__construct를 사용하여 이벤트 버퍼를 생성하는 방법을 보여줍니다.
#hostingforum.kr
php
<?php
// Event Extension을 사용하기 위해 require_once를 사용합니다.
require_once 'Event.php';
// 이벤트 버퍼를 생성합니다.
$event = new Event();
// 이벤트 버퍼를 생성합니다.
$buf = new EventBufferEvent($event, STDIN, Event::READABLE, 'readable');
// 이벤트 버퍼에 이벤트를 등록합니다.
$buf->setCallbacks(
'readable',
function () {
// 읽기 가능한 이벤트가 발생했을 때 호출되는 콜백 함수입니다.
echo "읽기 가능한 이벤트가 발생했습니다.
";
// 이벤트 버퍼를 비우고 종료합니다.
$buf->disable(Event::READABLE);
$buf->enable(Event::WRITABLE);
},
function () {
// 쓰기 가능한 이벤트가 발생했을 때 호출되는 콜백 함수입니다.
echo "쓰기 가능한 이벤트가 발생했습니다.
";
// 이벤트 버퍼를 비우고 종료합니다.
$buf->disable(Event::WRITABLE);
$buf->enable(Event::READABLE);
},
function () {
// 에러 이벤트가 발생했을 때 호출되는 콜백 함수입니다.
echo "에러 이벤트가 발생했습니다.
";
}
);
// 이벤트 버퍼를 등록합니다.
$event->add($buf);
// 이벤트 루프를 시작합니다.
$event->base->loop();
?>
이 예제에서는 `EventBufferEvent::__construct`를 사용하여 이벤트 버퍼를 생성하고, 이벤트를 등록하여 이벤트 루프를 시작합니다. 이벤트 루프는 이벤트 버퍼에 이벤트가 발생할 때마다 콜백 함수를 호출합니다.
# 참고
* Event Extension은 PHP 5.4.0 이상에서 사용할 수 있습니다.
* EventBufferEvent::__construct는 이벤트 버퍼를 생성하는 데 사용되는 생성자입니다.
* 이벤트 버퍼는 비동기 I/O를 처리하는 데 사용됩니다.
* 이벤트 루프는 이벤트 버퍼에 이벤트가 발생할 때마다 콜백 함수를 호출합니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.