표현식 병렬 실행
변수 값을 설정하는 두 개의 표현식 로봇은 동일한 워크플로 프로세스 내에서 동시에 실행할 수 있습니다. 이를 표현식 병렬 실행이라고 합니다.
제공된 워크플로에 병렬 실행의 예가 표시됩니다. 로봇 ExprRobot1은 변수 1 값을 수정하고 ExprRobot2는 변수 2 값을 수정합니다. ExprRobot1이 먼저 실행되면 변수 1이 정의된 값을 수신합니다. ExprRobot2가 실행되면 변수 2가 정의된 값을 수신하고 워크플로 프로세스가 종료됩니다.
이 예에서 표현식 로봇 ExprRobot1 및 ExprRobot2 모두 동일한 변수를 수정하도록 설정되면 처음 실행하는 로봇에 의한 변경 사항으로 덮어씁니다.
병렬 실행 워크플로는 표현식에 의해 수정되는 해당 로컬 변수 값만 프로세스 레벨 변수로 전파되는 방식으로 구성됩니다. 따라서 표현식에 의해 변수에 지정된 값은 해당 변수가 다른 표현식에 의해 명시적으로 수정된 경우가 아니면 덮어쓰여지지 않습니다.
|
이러한 확인은 표현식 로봇 내 표현식, 동기화 로봇의 라우팅 표현식 및 블록의 While 표현식에만 적용 가능합니다. 초기화 원본 및 복사 대상 설정은 프로세스 레벨에 전파할 로컬 변수를 결정하는 활동의 표현식 동작에는 영향을 주지 않습니다.
|
변수를 프로세스 레벨로 전파하려면 해당 값의 수정 여부에 상관없이 표현식에서 setDirty(self,variable_name) 메소드를 사용합니다. 이 메소드는 두 개의 변수로 포함 프로세스에 대한 참조와 전파될 변수의 이름을 사용합니다.
|
새로 작성된 워크플로 템플릿만 표현식 병렬 실행을 지원합니다. 이전 버전 Windchill에서 작성된 템플릿의 경우 표현식 파일을 재생성해야 합니다. 이렇게 하려면 Windchill\codebase\wt\workflow\expr 경로에서 이전 표현식 파일을 삭제하고 워크플로 템플릿에 있는 적절한 표현식 로봇의 표현식 탭에서 구문 점검을 클릭합니다.
|