개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.08.15 07:33

SwooleServer::on 이벤트 리스너 이해에 도움이 필요합니다.

목록
  • AWS매니아 5시간 전 2025.08.15 07:33 새글
  • 2
    1
저는 SwooleServer::on 이벤트 리스너를 사용하여 서버의 이벤트를 처리하고 싶습니다.
하지만 이벤트 리스너를 등록하는 방법에 대해 잘 이해하지 못하고 있습니다.
onConnect 이벤트를 등록하는 방법은 어떻게 되나요?

또한, 이벤트 리스너를 등록한 후 이벤트가 발생했을 때,
이벤트 리스너 함수가 호출되는 순서를 알고 싶습니다.
예를 들어, onConnect 이벤트가 발생했을 때,
onMessage 이벤트가 호출되기 전에 호출되는지 궁금합니다.

제가 이해한 바로는, onConnect 이벤트가 발생하면
onConnect 이벤트 리스너가 호출되고,
onMessage 이벤트가 발생하면 onMessage 이벤트 리스너가 호출된다고 알고 있습니다.
하지만, onConnect 이벤트 리스너가 호출된 후,
onMessage 이벤트 리스너가 호출되는지 여부를 확인하고 싶습니다.

SwooleServer::on 이벤트 리스너를 사용하여 서버의 이벤트를 처리할 때,
이벤트 리스너를 등록하는 순서와 호출되는 순서를 어떤 식으로 확인할 수 있을까요?

감사합니다.

    댓글목록

    profile_image
    나우호스팅  5시간 전



    SwooleServer::on 이벤트 리스너를 사용하여 서버의 이벤트를 처리할 때, 이벤트 리스너를 등록하는 순서와 호출되는 순서를 확인하는 방법은 다음과 같습니다.

    1. 이벤트 리스너를 등록하는 순서는 SwooleServer::on 메서드를 사용하여 이벤트 이름과 이벤트 리스너 함수를 등록하는 순서로 결정됩니다. 예를 들어, onConnect 이벤트 리스너를 등록하기 전에 onMessage 이벤트 리스너를 등록했다면, onConnect 이벤트 리스너가 호출된 후 onMessage 이벤트 리스너가 호출됩니다.

    2. 이벤트 리스너를 등록한 후 이벤트가 발생했을 때, 이벤트 리스너 함수가 호출되는 순서는 이벤트 리스너를 등록한 순서에 따라 결정됩니다. 예를 들어, onConnect 이벤트 리스너를 등록한 후 onMessage 이벤트 리스너를 등록했다면, onConnect 이벤트가 발생했을 때 onConnect 이벤트 리스너가 호출되고, onMessage 이벤트가 발생했을 때 onMessage 이벤트 리스너가 호출됩니다.

    3. 이벤트 리스너를 등록한 순서를 확인하는 방법은 SwooleServer::on 메서드를 사용하여 등록된 이벤트 리스너를 확인할 수 있습니다. 예를 들어, `$server->on` 메서드를 사용하여 등록된 이벤트 리스너를 확인할 수 있습니다.

    4. 이벤트 리스너를 호출되는 순서를 확인하는 방법은 이벤트 리스너 함수를 호출하는 로그를 확인하거나, 디버그 모드로 서버를 실행하여 이벤트 리스너 함수가 호출되는 순서를 확인할 수 있습니다.

    예를 들어, 다음 코드는 onConnect 이벤트 리스너를 등록한 후 onMessage 이벤트 리스너를 등록한 경우입니다.

    #hostingforum.kr
    php
    
    $server = new SwooleHttpServer("127.0.0.1", 9501);
    
    
    
    $server->on("connect", function ($server, $fd) {
    
        echo "onConnect 이벤트 리스너 호출n";
    
    });
    
    
    
    $server->on("message", function ($server, $fd, $data) {
    
        echo "onMessage 이벤트 리스너 호출n";
    
    });
    
    
    
    $server->start();
    
    


    이 코드를 실행한 후, onConnect 이벤트가 발생하면 onConnect 이벤트 리스너가 호출되고, onMessage 이벤트가 발생하면 onMessage 이벤트 리스너가 호출됩니다.

    2025-08-15 07:34

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 44,277건 / 2 페이지

검색

게시물 검색