다음을 통해 공유


SLI_PURGE

SLI_PURGE 동사는 대기 조건으로 발급된 SLI_RECEIVE 동사를 취소합니다.

다음 구조체는 SLI_PURGE 사용하는 VCB(동사 제어 블록)의 LUA_COMMON 멤버에 대해 설명합니다.

구문

  
struct LUA_COMMON {  
    unsigned short    lua_verb;  
    unsigned short    lua_verb_length;  
    unsigned short    lua_prim_rc;  
    unsigned long     lua_sec_rc;  
    unsigned short    lua_opcode;  
    unsigned long     lua_correlator;  
    unsigned char     lua_luname[8];  
    unsigned short    lua_extension_list_offset;  
    unsigned short    lua_cobol_offset;  
    unsigned long     lua_sid;  
    unsigned short    lua_max_length;  
    unsigned short    lua_data_length;  
    char FAR *        lua_data_ptr;  
    unsigned long     lua_post_handle;  
    struct LUA_TH     lua_th;  
    struct LUA_RH     lua_rh;  
    struct LUA_FLAG1  lua_flag1;  
    unsigned char     lua_message_type;  
    struct LUA_FLAG2  lua_flag2;  
    unsigned char     lua_resv56[7];  
    unsigned char     lua_encr_decr_option;  
};  

멤버

lua_verb
제공된 매개 변수입니다. SLI(세션 수준 인터페이스) 동사에 대한 LUA_VERB_SLI 동사 코드를 포함합니다.

lua_verb_length
제공된 매개 변수입니다. LUA(논리 단위 애플리케이션) VCB의 길이(바이트)를 지정합니다. 발급되는 동사 레코드의 길이를 포함해야 합니다.

lua_prim_rc
동사가 완료될 때 LUA에서 설정한 기본 반환 코드입니다. 유효한 반환 코드는 발급된 LUA 동사에 따라 달라집니다.

lua_sec_rc
동사가 완료될 때 LUA에서 설정한 보조 반환 코드입니다. 유효한 반환 코드는 발급된 LUA 동사에 따라 달라집니다.

lua_opcode
제공된 매개 변수입니다. LUA_OPCODE_SLI_PURGE 발급할 동사에 대한 LUA 명령 코드(동사 작업 코드)를 포함합니다.

lua_correlator
제공된 매개 변수입니다. 동사를 다른 사용자가 제공한 정보와 연결하는 사용자가 제공한 값을 포함합니다. LUA는 이 정보를 사용하거나 변경하지 않습니다. 이 매개 변수는 선택적 요소입니다.

lua_luname
제공된 매개 변수입니다. Windows LUA 세션에서 사용하는 로컬 LU의 ASCII 이름을 지정합니다.

SLI_PURGE lua_sid 0인 경우에만 이 매개 변수가 필요합니다.

이 매개 변수는 8바이트 길이로, 이름이 8자보다 짧은 경우 오른쪽에 공백(0x20)이 채워집니다.

lua_extension_list_offset
SLI_PURGE 사용되지 않으며 0으로 설정해야 합니다.

lua_cobol_offset
Microsoft® Host Integration Server 또는 SNA Server의 LUA에서 사용되지 않으며 0이어야 합니다.

lua_sid
제공된 매개 변수입니다. 세션 식별자를 지정하고 SLI_OPENRUI_INIT 반환합니다. 다른 동사는 이 매개 변수를 사용하여 명령에 사용되는 세션을 식별합니다. 다른 동사에서 lua_luname 매개 변수를 사용하여 세션을 식별하는 경우 lua_sid 매개 변수를 0으로 설정합니다.

lua_max_length
SLI_PURGE 사용되지 않으며 0으로 설정해야 합니다.

lua_data_length
SLI_PURGE 사용되지 않으며 0으로 설정해야 합니다.

lua_data_ptr
SLI_PURGE 실행되면 이 매개 변수는 취소할 SLI_RECEIVE 동사 VCB의 위치를 가리킵니다.

lua_post_handle
제공된 매개 변수입니다. 이벤트에 의해 비동기 알림을 수행할 경우 Microsoft Windows Server에서 사용됩니다. 이 변수에는 신호를 받을 이벤트의 핸들 또는 창 핸들이 포함됩니다.

lua_th
SLI_PURGE 사용되지 않으며 0으로 설정해야 합니다.

lua_rh
SLI_PURGE 사용되지 않으며 0으로 설정해야 합니다.

lua_flag1
SLI_PURGE 사용되지 않으며 0으로 설정해야 합니다.

lua_message_type
SLI_PURGE 사용되지 않으며 0으로 설정해야 합니다.

lua_flag2
반환된 매개 변수입니다. LUA에서 반환된 메시지에 대한 플래그를 포함합니다.

lua_flag2.async

1로 설정된 경우 LUA 인터페이스 동사가 비동기적으로 완료되었음을 나타냅니다.

lua_resv56
예약된 및 는 0으로 설정해야 합니다.

lua_encr_decr_option
SLI_PURGE 사용되지 않으며 0으로 설정해야 합니다.

반환 코드

LUA_OK
기본 반환 코드입니다. 동사가 성공적으로 실행되었습니다.

LUA_SEC_OK

보조 반환 코드; LUA_OK 대한 추가 정보가 없습니다.

LUA_PARAMETER_CHECK
기본 반환 코드입니다. 매개 변수 오류로 인해 동사가 실행되지 않았습니다.

LUA_INVALID_LUNAME

보조 반환 코드; 잘못된 lua_luname 지정되었습니다.

LUA_BAD_SESSION_ID

보조 반환 코드; lua_sid 잘못된 값이 VCB에 지정되었습니다.

LUA_BAD_DATA_PTR

보조 반환 코드; lua_data_ptr 매개 변수에 유효한 포인터가 없거나 읽기/쓰기 세그먼트를 가리키지 않으며 제공된 데이터가 필요합니다.

LUA_RESERVED_FIELD_NOT_ZERO

보조 반환 코드; 방금 발급된 동사에 대한 예약 매개 변수가 0으로 설정되지 않았습니다.

LUA_INVALID_POST_HANDLE

보조 반환 코드; 이벤트를 비동기 게시 방법으로 사용하는 Microsoft Windows 운영 체제의 경우 Windows LUA VCB에 유효한 이벤트 핸들이 포함되어 있지 않습니다.

LUA_VERB_LENGTH_INVALID

보조 반환 코드; LUA에 의해 예기치 않은 lua_verb_length 값과 함께 LUA 동사가 발급되었습니다.

LUA_STATE_CHECK
기본 반환 코드입니다. 동사가 잘못된 상태에서 발행되었으므로 실행되지 않았습니다.

LUA_NO_SLI_SESSION

보조 반환 코드; 명령이 실행되었을 때 SLI_CLOSE 또는 세션 오류로 인해 세션이 열리지 않았거나 중단되었습니다.

LUA_NO_RECEIVE_TO_PURGE

보조 반환 코드; SLI_PURGE 발급했을 때 SLI_RECEIVE 미해결되지 않았습니다. 두 가지 상황 중 하나로 인해 문제가 발생했습니다.

  • SLI_RECEIVE SLI_PURGE 처리를 완료하기 전에 완료되었습니다. 오류 조건이 아니므로 이 문제를 처리하도록 애플리케이션을 변경할 수 있습니다.

  • lua_data_ptr 매개 변수가 제거하려는 SLI_RECEIVE 올바르게 가리키지 않습니다.

    LUA_SLI_PURGE_PENDING

    보조 반환 코드; 다른 SLI_PURGE 실행되었을 때 SLI_PURGE 여전히 활성화되었습니다. 한 번에 하나의 SLI_PURGE 만 활성화할 수 있습니다.

    LUA_SESSION_FAILURE
    기본 반환 코드; 보조 반환 코드에 지정된 오류 조건으로 인해 세션이 실패했습니다.

    LUA_RECEIVED_UNBIND

    보조 반환 코드; PLU(기본 논리 단위)는 세션이 활성 상태일 때 SNA UNBIND 명령을 LUA 인터페이스로 보냈습니다. 결과적으로 세션이 중지되었습니다.

    LUA_LU_COMPONENT_DISCONNECTED

    보조 반환 코드; LU 구성 요소가 제대로 연결되지 않았기 때문에 LU 구성 요소를 사용할 수 없습니다. 전원이 켜지는지 확인합니다.

    LUA_UNSUCCESSFUL
    기본 반환 코드; 제공된 동사 레코드가 유효하지만 동사가 성공적으로 완료되지 않았습니다.

    LUA_VERB_RECORD_SPANS_SEGMENTS

    보조 반환 코드; LUA VCB 길이 매개 변수와 세그먼트 오프셋이 세그먼트 끝을 초과합니다.

    LUA_NOT_ACTIVE

    보조 반환 코드; LUA 동사가 발급되었을 때 LUA가 Microsoft Host Integration Server 또는 SNA Server 내에서 활성화되지 않았습니다.

    LUA_NOT_READY

    보조 반환 코드; 다음 중 하나로 인해 SLI 세션이 일시적으로 일시 중단되었습니다.

  • 새 BIND가 제공되고 있음을 나타내는 SNA UNBIND 형식 0x02 명령이 수신되었습니다. 시작 SLI_OPEN 완료된 후 UNBIND 형식 0x02 수신되면 BIND, 선택적 CRV 및 STSN 및 SDT 흐름이 수신될 때까지 세션이 일시 중단됩니다. 이러한 루틴은 다시 호출해야 하므로 다시 입력됩니다. SLI가 SDT 명령을 처리한 후 세션이 다시 시작됩니다. SLI_OPEN 처리하는 동안 UNBIND 형식 0x02 수신되는 경우 기본 반환 코드는 LUA_STATUS 아니라 SESSION_FAILURE.

  • SNA CLEAR를 수신하면 일시 중단이 발생했습니다. SNA SDT를 받으면 세션이 다시 시작됩니다.

    LUA_INVALID_PROCESS

    보조 반환 코드; 다른 OS/2 프로세스가 세션을 소유하기 때문에 RUI(요청 단위 인터페이스) 동사가 발급된 세션을 사용할 수 없습니다.

    LUA_LU_INOPERATIVE

    보조 반환 코드; RUI가 세션을 중지하려고 하는 동안 심각한 오류가 발생했습니다. 이 LU는 호스트에서 ACTLU(활성화 논리 단위)를 받을 때까지 모든 LUA 요청에 사용할 수 없습니다.

    LUA_CANCELED
    기본 반환 코드; 보조 반환 코드는 명령을 취소하는 이유를 제공합니다.

    LUA_TERMINATED

    보조 반환 코드; 동사가 보류 중일 때 세션이 종료되었습니다. 동사 프로세스가 취소되었습니다.

    LUA_IN_PROGRESS
    기본 반환 코드; 비동기 명령이 수신되었지만 완료되지 않았습니다.

    LUA_COMM_SUBSYSTEM_ABENDED
    기본 반환 코드입니다. 다음 조건 중 하나를 나타냅니다.

  • 이 대화에서 사용하는 노드에 ABEND가 발생했습니다.

  • TP(트랜잭션 프로그램)와 PU(물리적 단위) 2.1 노드 간의 연결이 끊어졌습니다(LAN 오류).

  • TP 컴퓨터의 SnaBase에서 ABEND가 발견되었습니다.

    LUA_COMM_SUBSYSTEM_NOT_LOADED
    기본 반환 코드입니다. 동사를 처리하는 동안 필수 구성 요소를 로드하거나 종료할 수 없습니다. 따라서 통신을 수행할 수 없습니다. 정정 작업은 시스템 관리자에게 문의하세요

    LUA_INVALID_VERB_SEGMENT
    기본 반환 코드입니다. VCB가 데이터 세그먼트의 끝을 넘어 확장되었습니다.

    LUA_UNEXPECTED_DOS_ERROR
    기본 반환 코드; 운영 체제 호출을 실행한 후 예기치 않은 운영 체제 반환 코드가 수신되고 보조 반환 코드에 지정됩니다.

    LUA_STACK_TOO_SMALL
    기본 반환 코드입니다. 애플리케이션의 스택 크기가 너무 작아서 동사를 실행할 수 없습니다. 애플리케이션의 스택 크기를 늘리세요.

    LUA_INVALID_VERB
    기본 반환 코드; 동사 코드 또는 작업 코드 또는 둘 다 잘못되었습니다. 동사가 실행되지 않았습니다.

설명

SLI_PURGE 대기 조건으로 SLI_RECEIVE 명령을 취소합니다.

일반적으로 SLI_RECEIVE 완료하는 데 너무 오래 걸리는 경우 SLI_PURGE 발급됩니다. SLI_RECEIVE 취소하려면 lua_data_ptr 취소할 SLI_RECEIVE VCB를 가리킵니다. SLI_PURGE SLI_RECEIVE 취소하는 데 성공하면 SLI_RECEIVE 기본 반환 코드가 LUA_CANCELED 설정됩니다.

참고 항목

RUI_INIT
SLI_OPEN
SLI_RECEIVE
SLI_SEND