다음을 통해 공유


Set_Return_Control(CPI-C)

호출 프로그램에서 호출하는 Set_Return_Control 호출(함수 이름 cmsrc)은 로컬 프로그램 할당 호출의 세션 요청에 따라 작동하는 LU(로컬 논리 단위)가 로컬 프로그램에 대한 제어를 반환해야 하는 시기를 지정하기 위해 호출 프로그램에서 실행됩니다.

구문

  
CM_ENTRY Set_Return_Control(   
  unsigned char FAR *conversation_ID,    
    CM_INT32 FAR *return_control,          
  CM_INT32 FAR *return_code              
);  

매개 변수

conversation_ID
제공된 매개 변수입니다. 대화의 식별자를 지정합니다. 이 매개 변수의 값은 Initialize_Conversation 반환되었습니다.

return_control
제공된 매개 변수입니다. 할당 호출에서 작동하는 로컬 LU가 로컬 프로그램에 대한 제어를 반환해야 하는 시기를 지정합니다. 허용되는 값은 다음과 같습니다.

CM_IMMEDIATE
LU는 경합 승자 세션을 즉시 사용할 수 있는 경우 할당하고 프로그램에 제어권을 반환합니다.

CM_WHEN_SESSION_ALLOCATED
LU는 세션을 할당하거나 오류가 발생할 때까지 프로그램에 컨트롤을 반환하지 않습니다. 세션을 사용할 수 없는 경우 프로그램은 세션을 기다립니다. (세션 제한이 0이면 LU는 즉시 컨트롤을 반환합니다.)

return_code
이 호출에서 반환된 코드입니다. 유효한 반환 코드는 이 항목의 뒷부분에 나와 있습니다.

반환 코드

CM_OK
기본 반환 코드; 호출이 성공적으로 실행되었습니다.

CM_PROGRAM_STATE_CHECK
기본 반환 코드; 대화가 INITIALIZE 상태가 아닙니다.

CM_PROGRAM_PARAMETER_CHECK
기본 반환 코드; conversation_ID 또는 return_control 지정한 값이 잘못되었습니다.

CM_PRODUCT_SPECIFIC_ERROR
기본 반환 코드; 제품별 오류가 발생하여 제품 오류 로그에 기록되었습니다.

상태 변경

대화는 INITIALIZE 상태여야 합니다.

상태 변경은 없습니다.

설명

이 호출은 Initialize_Conversation 설정된 기본 반환 컨트롤을 재정의합니다. 기본적으로 컨트롤은 세션이 할당되면 반환됩니다. 할당 호출이 실행된 후에는 이 호출을 실행할 수 없습니다.

세션에 대한 자세한 내용은 CPI-C 애플리케이션 작성을 참조하세요.

LU가 세션을 할당할 수 없는 경우 할당 호출에 알림이 반환됩니다.