요소 파트 조치 시퀀스 순서 지정

MicroC 프로파일을 사용하여 요소 파트에 대해 수행해야 하는 조치 시퀀스를 지정할 수 있습니다.

이 태스크 정보

클래스, 내재적 오브젝트 및 파일에 대해 수행해야 하는 조치를 지정할 수 있습니다.

요소 파트 실행 순서 스펙은 다음 두 가지 MicroC 개념을 기반으로 합니다.

모델 요소가 executable 요소임을 지정하려면, 해당 요소에 대해 doExecute 메소드를 작성하십시오. 이 메소드를 사용하여 특정 조치 시퀀스의 일부로 해당 요소에 대해 수행해야 하는 조치를 지정할 수 있습니다.

주: 실행 가능 요소에 대해 doExecute 메소드를 작성하지 않으면, 프로그램이 코드 생성 중에 비어 있는 doExecute 메소드를 생성합니다.

doExecute 메소드는 계산 및 리턴을 수행하는 코드로 구성되어야 합니다(운영 체제에서 제공하는 "대기" 기능을 사용할 수 없음을 의미).

요소 기능 창의 Execution Scheme 섹션에서 요소가 executable 또는 execution manager여야 함을 지정할 수 있습니다. Execution Scheme 섹션은 MicroC 프로파일을 사용하는 경우에만 기능 창에 나타납니다.

주: 요소의 동시성 설정을 sequential로 지정하는 경우, 요소가 executable인지 execution manager인지 여부를 결정할 수 있습니다. 그러나 요소의 동시성을 active으로 지정하는 경우, 프로그램은 자동으로 요소를 execution manager가 되게 합니다.

프로시저

  1. 새로 작성 단추새로 작성 단추를 클릭하여 MicroC 프로젝트를 작성하거나 파일 > 새로 작성을 선택하여 새 프로젝트 창을 여십시오.
  2. 프로젝트 이름 필드에 프로젝트 이름을 입력하십시오.
  3. 폴더 내 필드에서 찾아보기를 클릭하여 프로젝트의 폴더 위치를 선택하십시오.
  4. 프로젝트 유형 필드에서 MicroC 프로파일을 선택하고 프로젝트 설정에서 CodeCentric752C를 선택하십시오.
  5. 확인을 클릭하십시오. 지정된 위치가 없으면, 제품이 위치 작성 여부를 묻습니다. 를 클릭하십시오. 제품이 MicroC 프로젝트를 생성합니다.
  6. 다이어그램 도구를 사용하여 클래스를 작성하거나 모델에 클래스를 추가하십시오. 클래스에 실행 스킴을 지정하려면, 클래스를 강조표시하고 마우스 오른쪽 단추를 클릭한 후 드롭 다운 목록에서 기능을 선택하십시오.
    기능 창 - 실행 스킴 선택란 사용
  7. execution manager의 경우, 기능 창의 파트 탭에서 해당 파트의 실행 순서를 지정하십시오.
    기능 창 - 파트 탭

결과

MicroC 프로파일을 사용할 때 요소가 execution manager로 정의된 경우, 동시성 설정이 sequential인 경우에도 요소에는 자체 이벤트 큐가 있습니다. 이 동작은 기능 창의 일반 탭에서 동시성이 "활성"으로 설정된 경우에만 모델 요소에 이벤트 큐가 있는 일반 동작과 다릅니다.

실행 관리자의 이벤트 큐의 크기는 C_CG::Class::ExecutionManagerEventQueueSize 특성을 통해 제어됩니다.

각 실행 관리자는 실행 가능 파트의 실행을 제어합니다. 실행 관리자에는 해당 상태 차트에 정의된 이벤트 및 스스로가 실행 관리자가 아닌 파트에 대해 정의된 상태 차트를 처리하기 위한 자체 이벤트 큐가 있습니다. C_CG::Class::ExecutionManagerDispatchEventOrder 특성 값을 수정하여 이벤트 처리가 요소 파트의 doExecute 메소드보다 선행해야 하는지 또는 후행해야 하는지 여부를 지정할 수 있습니다.

주: 또한 실행 관리자는 파트의 파트에 대해 정의된 상태 차트를 계층 구조의 최하위 레벨로 하향식으로 처리합니다. 그러나 doExecute 호출과 관련하여 실행 관리자는 직접 파트에 대해 정의된 doExecute 메소드만 호출합니다.

하나 이상의 모델 요소를 executable으로 지정했지만 모델에 최소 하나의 활성 요소가 없는 경우, 생성된 코드는 패키지 레벨 doExecute 메소드를 포함합니다. 이 패키지 레벨 메소드는 패키지의 최상위 레벨에서 개별 실행 가능 요소에 대해 사용자가 정의한 doExecute 메소드를 호출합니다(C_CG::Configuration::UseMainTask 특성 값을 수정하여 이 기본 동작을 설정 해제할 수 있음).

주: 패키지 레벨 doExecute 메소드는 패키지 내 최상위 레벨 요소에 대해 정의된 doExecute 메소드만 호출합니다. 실행 관리자와 연관되지 않은 실행 가능 요소(계층 구조에서 하위에 있음)는 처리하지 않습니다.

피드백