다음을 통해 공유


IcomLUO.Receive 메서드

LU0 세션에서 아웃바운드 데이터를 받습니다.

구문

  
void Receive(  
   int timeout,  
   ref int datasize,  
   out int indication,  
   out short seqno,  
   ref System.Array data  
)  

매개 변수

Description
timeout 스레드가 데이터가 도착할 때까지 기다릴 수 있는 시간(밀리초)입니다.

를 설정 dataSize하여 애플리케이션이 시간 제한 후에 부분 데이터를 허용할지 여부를 나타낼 수 있습니다.

에 0xffffffff howLong 입력하면 시간 길이가 무한합니다.
datasize 애플리케이션에서 허용할 최대 데이터 양입니다.

시간 제한이 경쟁하기 전에 데이터 바이트가 수신되면 dataSize Receive는 부분 체인을 반환합니다.

이 메서드가 반환되면 데이터 버퍼에 있는 바이트 수가 포함됩니다.
indication 아웃바운드 데이터 스트림에 대한 추가 정보를 포함하는 비트 OR의 하나 이상의 플래그입니다. 자세한 내용은 주의 섹션을 참조하세요.
seqno 이 메서드가 반환되면 체인의 SNA 시퀀스 번호가 포함됩니다.

NEG_RESPONSE 에 indicationseqno 설정된 경우 호스트가 응답을 보낸 체인의 시퀀스 번호를 대신 포함할 수 있습니다.

에서 반환된 seqno 값은 IcomLU0.SendResponse에서 SNA 응답을 전송하는 데 사용할 수 있습니다.
data 받을 데이터가 포함된 배열입니다.

Return Value

설명
S_OK 데이터 버퍼에 데이터 체인이 완전히 수신되었거나 나머지 부분 데이터 체인이 수신되었습니다.
CLU0_S_PARTIAL_CHAIN 데이터 버퍼에 데이터 부분 체인이 수신되었습니다.
CLU0_S_TIMEOUT 지정된 시간 제한 내에 데이터가 수신되지 않았습니다.

다른 수신을 발급해야 합니다.
CLU0_E_SESSIONFAILURE LU0 세션이 실패했습니다.
CLU0_E_SERVER_FAILURE TSS 세션이 더 이상 유효하지 않습니다.

애플리케이션은 세션 핸들을 해제해야 합니다.
CLU0_E_WAITING 다른 스레드가 이 메서드에 대해 Receive 호출을 실행했으며 아직 반환되지 않았습니다.
CLU0_E_SESSION_FAILED 링크 중단 또는 기타 일시적인 오류로 인해 기본 SNA 세션이 실패했습니다.

서버 세션의 연결을 끊고 해제해야 합니다. 또는 IcomLU0.Offline을 호출하여 세션을 다시 설정한 다음, IcomLU0.Online 호출하여 세션에 반응할 수 있습니다.
CLU0_E_NOTCONNECTED comLU0 클라이언트는 Icom3270.Connect 호출을 통해 세션에 연결되지 않습니다.
CLU0_E_BADPARAM 매개 변수 중 하나에 잘못된 값이 포함되어 있습니다.
CLU0_E_SYSERROR 내부 오류로 인해 메서드가 실패했습니다.

예외

설명

일반적으로 수신은 전체 SNA 데이터 체인을 사용할 수 있게 될 때까지 차단됩니다. 그러나 애플리케이션은 , maxDataincompleteData을 통해 howLong블록을 제어할 수 있습니다.

Receive는 애플리케이션 수준 데이터만 반환합니다. 특히 Receive는 SNA TH 및 RH 헤더를 반환하지 않습니다.

다음 표에서는 의 가능한 값을 설명합니다 indication.

Description
SESSION_STARTED 다음 중 하나

- SSCP 시작 세션이 활성화되었습니다.
- CLEAR에 의해 다시 설정된 세션이 SDT에 의해 다시 시작되었습니다.
- 이전에 UNBIUND를 받은 세션이 BIND 및 SDT에 의해 다시 활성화되었습니다.
BEGIN_BRACKET 호스트가 새 대괄호를 시작했습니다.
END_BRACKET 호스트가 현재 대괄호를 종료했습니다.
SEND 호스트가 보낼 수 있는 권한을 부여했습니다.
DATA_COMPLETE 데이터는 전체 데이터 체인 또는 데이터 체인의 끝을 나타냅니다.
DATA_INCOMPLETE 데이터는 불완전한 데이터 체인을 나타냅니다.
취소 호스트의 마지막 체인이 취소되었습니다.
NO_RESPONSE 애플리케이션은 데이터에 대한 응답을 보내면 안 됩니다.
EXCEPTION_RESPONSE1/2 애플리케이션은 데이터를 거부하는 부정적인 응답 또는 호의적인 승인을 보낼 수 있습니다.
DEFINITE_RESPONSE1/2 애플리케이션은 데이터에 대한 응답을 보내야 합니다.
POS_RESPONSE 호스트가 긍정적인 응답을 보냈습니다.
NEG_RESPONSE 호스트가 부정적인 응답을 보냈습니다.
EXR_REQUEST SNA 서버는 호스트 요청을 예외 요청으로 변환했습니다.
CHASE 호스트는 모든 미해결 응답을 보내라고 요청합니다.
NORMAL_DATA 일반 데이터 흐름에서 데이터를 수신했습니다.
EXPEDITED_DATA 데이터가 신속한 데이터 흐름에서 수신되었습니다.
APPL_DATA 데이터는 FMD(애플리케이션) 데이터입니다.
FM_DATA 데이터는 FMH(함수 관리) 데이터입니다.
LU_DATA LU 세션에서 데이터를 수신했습니다.
SSCP_DATA SSCP 세션에서 데이터를 수신했습니다.
CLEAR 호스트가 세션을 지웠다.
정지 호스트가 세션을 정지했습니다.
SHUTDOWN 호스트가 세션을 종료하고 있습니다.
RELEASE 호스트가 정지 또는 종료 상태를 취소했습니다.
언바인딩 호스트가 LU-LU 세션을 언바운드합니다.

참고 항목

IcomLU0 메서드
LU0용 세션 통합자