라이브러리

[PHP] EvIo::createStopped - 중지된 EvIo 워처 객체를 생성합니다.




EvIo::createStopped


EvIo::createStopped은 PHP의 EvIo 클래스에서 사용할 수 있는 메서드입니다. EvIo 클래스는 이벤트 루프를 사용하여 I/O 작업을 비동기적으로 처리할 수 있도록 해주는 클래스입니다.

EvIo::createStopped은 이벤트 루프에 이벤트를 등록하는 메서드입니다. 이 메서드는 이벤트 루프에 이벤트를 등록하고, 이벤트가 발생할 때 콜백 함수를 호출합니다. 이 메서드는 이벤트 루프에 이벤트를 등록하는 데 사용되며, 이벤트 루프가 종료되면 이벤트가 자동으로 제거됩니다.

# 예제


#hostingforum.kr
php

<?php



// 이벤트 루프를 생성합니다.

$loop = new EvLoop();



// 이벤트 루프에 이벤트를 등록합니다.

$watcher = EvIo::createStopped($loop, STDIN, Ev::READ);

$watcher->set($callback = function (Ev $watcher) {

    echo "데이터가 입력되었습니다.
";

    $watcher->stop();

});



// 이벤트 루프를 시작합니다.

$loop->run();



?>



# 사용 방법


1. 이벤트 루프를 생성합니다.
2. 이벤트 루프에 이벤트를 등록합니다. `EvIo::createStopped` 메서드를 사용하여 이벤트를 등록합니다.
3. 이벤트 루프에 이벤트를 등록할 때, 이벤트가 발생할 때 호출할 콜백 함수를 지정합니다.
4. 이벤트 루프를 시작합니다. `run` 메서드를 사용하여 이벤트 루프를 시작합니다.

# 주의 사항


* 이벤트 루프가 종료되면 이벤트가 자동으로 제거됩니다.
* 이벤트 루프가 종료되기 전에 이벤트를 중지하려면 `stop` 메서드를 사용하여 이벤트를 중지해야 합니다.

# 더 많은 예제


* 이벤트 루프에 이벤트를 등록하여 데이터를 읽고 쓰는 예제
#hostingforum.kr
php

<?php



// 이벤트 루프를 생성합니다.

$loop = new EvLoop();



// 이벤트 루프에 이벤트를 등록합니다.

$watcher = EvIo::createStopped($loop, STDIN, Ev::READ);

$watcher->set($callback = function (Ev $watcher) {

    echo "데이터가 입력되었습니다.
";

    $data = fgets(STDIN);

    echo "입력된 데이터: $data
";

    $watcher->stop();

});



// 이벤트 루프에 이벤트를 등록합니다.

$watcher = EvIo::createStopped($loop, STDOUT, Ev::WRITE);

$watcher->set($callback = function (Ev $watcher) {

    echo "데이터를 출력합니다.
";

    fwrite(STDOUT, "Hello, World!
");

    $watcher->stop();

});



// 이벤트 루프를 시작합니다.

$loop->run();



?>



* 이벤트 루프에 이벤트를 등록하여 파일을 읽고 쓰는 예제
#hostingforum.kr
php

<?php



// 이벤트 루프를 생성합니다.

$loop = new EvLoop();



// 이벤트 루프에 이벤트를 등록합니다.

$watcher = EvIo::createStopped($loop, fopen("example.txt", "r"), Ev::READ);

$watcher->set($callback = function (Ev $watcher) {

    echo "파일에서 데이터를 읽었습니다.
";

    $data = fread($watcher->fd, 1024);

    echo "읽은 데이터: $data
";

    $watcher->stop();

});



// 이벤트 루프를 시작합니다.

$loop->run();



?>



이 예제는 이벤트 루프에 이벤트를 등록하여 파일을 읽는 예제입니다. `EvIo::createStopped` 메서드를 사용하여 이벤트를 등록하고, 이벤트가 발생할 때 콜백 함수를 호출합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 573 페이지

검색

게시물 검색