pdcomm_gem_spool_request_data
함수
S6F23 Request Spooled Data를 보냅니다(호스트).
PdcommStatus pdcomm_gem_spool_request_data(PdcommTcpEndpoint *endpoint, uint32_t command, PdcommTcpToken *token)장비는 S6F24(RSDA 0 수락, 1 사용 중, 2 스풀된 데이터 없음)로 응답하며, 이 응답은 #PDCOMM_GEM_SPOOL_CONTROL_ACK 결과로 전달됩니다. 전송 요청이 수락된 뒤에는 스풀된 메시지가 일반 1차 메시지로 도착합니다.
매개변수
| 이름 | 설명 |
|---|---|
endpoint | 스풀 한도와 함께 GEM 호스트로 구성되고 Communicating 상태인 엔드포인트입니다. |
command | RSDC입니다. #PDCOMM_GEM_SPOOL_TRANSMIT 또는 #PDCOMM_GEM_SPOOL_PURGE입니다. |
token | 요청 토큰을 받습니다. 실패하면 항상 0입니다. NULL이 아니어야 합니다. |
반환값
요청을 큐에 넣었으면 #PDCOMM_OK를 반환합니다. token 또는 endpoint가 NULL이거나 command를 알 수 없으면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. 스풀 호스트 한도가 구성되지 않았거나 GEM이 Communicating 상태가 아니면 #PDCOMM_INVALID_STATE를 반환합니다. 준비된 TCP 이벤트(staged event)가 대기 중이거나 빈 대기 슬롯이 없으면 #PDCOMM_BACKPRESSURE를 반환합니다. 그 밖에 #PDCOMM_LIMIT_EXCEEDED, #PDCOMM_ALLOCATION_FAILED, TCP 상태 코드, #PDCOMM_POISONED를 반환합니다.