embgms04.gms : 임베디드 코드 블록의 연속 테스트

설명

내장된 Python 코드는 일시 중지되고 다른 블록에서 계속될 수 있습니다.
이전에 정의된 기호에 액세스할 수 있고 여러 초기화를 저장할 수 있습니다.

기고자: Michael Bussieck, 2023년 1월

소형 모델 유형 :슬롯 사이트 추천


카테고리 : 슬롯 사이트 추천 테스트 라이브러리


메인 파일 : embgms04.gms

$title '임베디드 코드 블록의 연속 테스트' (EMBGMS04,SEQ=928)

$onText
내장된 Python 코드는 일시 중지하고 다른 블록에서 계속할 수 있습니다.
이전에 정의된 기호에 액세스할 수 있고 여러 초기화를 저장할 수 있습니다.

기고자: Michael Bussieck, 2023년 1월
$offText

스칼라 x /0/;

$onMultiR
$onEmbeddedCode 슬롯 사이트 추천: 저장=0
스칼라 x /2/;
$offEmbeddedCode x
$ifE x<>2 $abort %system.line% 줄에 예기치 않은 값이 있습니다.

* 위 기호 x 세트는 더 이상 사용할 수 없습니다.
$onEmbeddedCode 슬롯 사이트 추천:
$if 선언 x $abort x가 표시될 것으로 예상하지 않음
스칼라 x /4/;
$offEmbeddedCode x
$ifE x<>4 $abort %system.line% 줄에 예기치 않은 값이 있습니다.

* 위의 기호 x 세트는 저장 파일을 통해 사용할 수 있습니다.
$onEmbeddedCode 슬롯 사이트 추천: 재시작=0 저장=1
$선언되지 않은 경우 x $abort x가 표시될 것으로 예상합니다.
x = 2*x;
$offEmbeddedCode x
$ifE x<>4 $abort %system.line% 줄에 예기치 않은 값이 있습니다.

* 위의 기호 x 세트는 저장 파일을 통해 계속 사용할 수 있습니다.
* 컴파일 시간 블록에서 실행 시간 블록으로 이동
EmbeddedCode 슬롯 사이트 추천: 재시작=1
x = x*2;
일시 중지EmbeddedCode x
abort$(x<>8) '%system.line% 줄에 예상치 못한 값이 있습니다';

* 위의 기호 x 세트는 계속 사용할 수 있습니다.
* 실행 시간 블록을 일시 중지하고 실행 시간 블록을 계속합니다.
계속임베디드코드:
x = x*2;
endEmbeddedCode x
abort$(x<>16) '%system.line% 줄에 예상치 못한 값이 있습니다';

* 명시적인 재시작 없이는 위의 기호 x 세트를 사용할 수 없습니다.
* 실행 시간 블록 종료 및 새 실행 시간 블록 시작
임베디드코드 슬롯 사이트 추천:
$if 선언 x $abort x가 표시될 것으로 예상하지 않음
스칼라 x /32/;
endEmbeddedCode x
abort$(x<>32) '%system.line% 줄에 예상치 못한 값이 있습니다';

임베디드코드 슬롯 사이트 추천:
스칼라 세션 /1/;
일시중지임베디드코드
스칼라 세션1; session1 = 임베디드 핸들;

임베디드코드 슬롯 사이트 추천:
스칼라 세션 /2/;
일시중지임베디드코드
스칼라 세션2; session2 = 임베디드 핸들;

계속임베디드코드:
abort$(session<>2) '세션 2에 있을 것으로 예상됩니다.';
일시중지임베디드코드

임베디드코드 슬롯 사이트 추천:
스칼라 세션 /3/;
endEmbeddedCode

continueEmbeddedCode 세션1:
abort$(session<>1) '세션 1에 있을 것으로 예상됩니다.';
endEmbeddedCode

continueEmbeddedCode 세션2:
abort$(session<>2) '세션 2에 있을 것으로 예상됩니다.';
endEmbeddedCode

*다음은 실패할 것으로 예상됩니다. 일시 중지된 EC가 없으면 계속할 수 없습니다.
$onEcho > test.gms
스칼라 x;

put_utility '저장' / '0';
EmbeddedCode 슬롯 사이트 추천: 재시작=0
x = 4*2;
일시 중지EmbeddedCode x

스칼라 핸들;
핸들 = 임베디드 핸들;

계속임베디드코드:
x = x*2;
endEmbeddedCode x

* 핸들이 있는 세션이 닫혀 있으므로 작동하지 않습니다.
continueEmbeddedCode 핸들:
x = x*2;
endEmbeddedCode x
$offEcho

$call 슬롯 사이트 추천 test.gms lo=%슬롯 사이트 추천lo%
$ifE errorLevel=0 $abort %system.line% 라인에서 예상되는 문제