콘텐츠로 이동
무료 평가 시작

pdcomm_gem_spool_retry_dequeue

함수

수락된 전달 뒤 대기 중인 디큐(dequeue)를 다시 시도합니다.

PdcommStatus pdcomm_gem_spool_retry_dequeue(PdcommTcpEndpoint *endpoint, PdcommGemSpoolWriteInfo *info)

선언 위치: #include <pdcomm_gem_spooling.h>

이미 전달된 맨 앞 메시지의 영속화와 디큐만 수행하며, 아무것도 보내지 않습니다. 대기 중인 디큐는 연결 해제와 재연결 후에도 남으므로, 이 호출은 원래 전달 결과가 없어도, 동기화되지 않아도 동작합니다.

매개변수

이름설명
endpoint장비 스풀이 있는 엔드포인트입니다.
info결과 유형(#PDCOMM_GEM_SPOOL_REMOVED)을 받습니다. NULL이 아니어야 합니다.

반환값

디큐를 설치하면 #PDCOMM_OK 또는 #PDCOMM_SPOOL_UNCONFIRMED를 반환합니다. 대기 중인 디큐가 없으면 #PDCOMM_STALE_TOKEN을 반환합니다. 장비 스풀이 구성되지 않았으면 #PDCOMM_INVALID_STATE를 반환합니다. 준비된 TCP 이벤트(staged event)가 대기 중이면 #PDCOMM_BACKPRESSURE를 반환합니다. #PDCOMM_IO_ERROR 같은 영속화(persistence) 오류를 반환할 수 있으며, 이때 디큐는 계속 대기 중입니다. 인수가 NULL이면 #PDCOMM_INVALID_ARGUMENT를 반환하며, 그 밖에 #PDCOMM_POISONED를 반환할 수 있습니다.