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

pdcomm_gem_program_at

함수

저장된 프로그램 하나를 위치로 지정해 복사합니다.

PdcommStatus pdcomm_gem_program_at(PdcommTcpEndpoint *endpoint, size_t index, PdcommSecsItem **out_id, PdcommSecsItem **out_body)

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

프로그램은 삽입 순서를 유지합니다. 프로그램을 교체해도 위치는 그대로입니다.

매개변수

이름설명
endpoint프로그램 저장소가 있는 엔드포인트입니다.
index0부터 시작하는 프로그램 인덱스입니다.
out_id새 PPID 항목을 받습니다. 먼저 NULL로 설정됩니다. NULL이 아니어야 합니다.
out_body새 PPBODY 항목을 받습니다. 먼저 NULL로 설정됩니다. NULL이 아니어야 합니다.

반환값

성공하면 #PDCOMM_OK를 반환합니다. 출력 포인터나 endpoint가 NULL이면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. 프로그램 저장소가 구성되지 않았으면 #PDCOMM_INVALID_STATE를 반환합니다. index가 끝을 넘으면 #PDCOMM_OUT_OF_RANGE를 반환합니다. 준비된 TCP 이벤트(staged event)가 대기 중이면 #PDCOMM_BACKPRESSURE를 반환합니다. 그 밖에 #PDCOMM_LIMIT_EXCEEDED, #PDCOMM_ALLOCATION_FAILED, #PDCOMM_POISONED를 반환할 수 있습니다.

참고

  • 소유권: pdcomm_secs_destroy()로 두 항목을 모두 해제합니다. 실패하면 어느 출력에도 항목이 없습니다.