개발자 Q&A

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

2025.03.14 08:44

Memcached::getDelayedByKey 메서드 사용 방법에 관해 질문합니다.

  • 풀스택꿈나무 1일 전 2025.03.14 08:44
  • 1
    1
저는 Memcached::getDelayedByKey 메서드를 사용하여 데이터를 조회하려고 합니다.
이 메서드는 데이터를 조회하는 동시에 데이터가 없을 때 callback 함수를 호출하도록 지원합니다.
하지만, callback 함수를 호출하기 전에 데이터가 실제로 조회된다는 보장이 없는데요.
이 경우 callback 함수가 호출되는 시점을 정확하게 파악하고 싶습니다.
callback 함수가 호출되는 시점은 데이터가 실제로 조회된 시점인지, 데이터가 조회되지 않았을 때 호출되는 시점인지 구분이 어렵습니다.
callback 함수가 호출되는 시점을 정확하게 파악하고 싶습니다.

    댓글목록

    profile_image
    나우호스팅  1일 전



    Memcached::getDelayedByKey 메서드는 데이터를 조회하는 동시에 callback 함수를 호출하도록 지원합니다. 하지만, callback 함수가 호출되는 시점을 정확하게 파악하는 것이 중요합니다.

    callback 함수가 호출되는 시점은 데이터가 실제로 조회된 시점인지, 데이터가 조회되지 않았을 때 호출되는 시점인지 구분하기 어렵습니다. 그러나, Memcached::getDelayedByKey 메서드는 데이터가 조회되지 않았을 때 callback 함수를 호출합니다. 따라서, callback 함수가 호출되는 시점은 데이터가 조회되지 않았을 때 호출되는 시점입니다.

    callback 함수가 호출되는 시점을 정확하게 파악하려면, callback 함수 내부에서 데이터가 조회된 후에 데이터를 사용하는 코드를 작성하지 않는 것이 좋습니다. 대신, callback 함수 내부에서 데이터가 조회되지 않았을 때의 처리를 수행하도록 코드를 작성하는 것이 좋습니다.

    예를 들어, 데이터가 조회되지 않았을 때 callback 함수 내부에서 "데이터가 조회되지 않았습니다."라는 메시지를 출력하는 코드를 작성할 수 있습니다.

    #hostingforum.kr
    php
    
    $memcached = new Memcached();
    
    $memcached->addServer('localhost', 11211);
    
    
    
    $callback = function($key, $value) {
    
        if ($value === false) {
    
            echo "데이터가 조회되지 않았습니다.n";
    
        } else {
    
            echo "데이터가 조회되었습니다.n";
    
        }
    
    };
    
    
    
    $memcached->getDelayedByKey('key', $callback);
    
    


    위 코드에서는 callback 함수 내부에서 데이터가 조회되지 않았을 때 "데이터가 조회되지 않았습니다."라는 메시지를 출력하는 코드를 작성했습니다. 따라서, callback 함수가 호출되는 시점은 데이터가 조회되지 않았을 때 호출되는 시점입니다.

    2025-03-14 08:45

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

검색

게시물 검색