이벤트 시맨틱

한 오브젝트가 다른 오브젝트로 이벤트를 전송한 후 대상 오브젝트 스레드의 큐에 이벤트가 대기되면 이벤트가 작성됩니다(스레드 파티셔닝은 이 안내서에서 다루지 않음).

큐의 헤드에 도달하는 이벤트는 대상 오브젝트로 디스패치됩니다. 오브젝트로 이벤트가 디스패치되면 상태 차트의 이벤트 전파 시맨틱 및 RTC(Run-To-Completion) 시맨틱에 따라 오브젝트가 이를 처리합니다. 이벤트가 처리된 후에는 더 이상 존재하지 않으며 실행 프레임워크가 내재적으로 이벤트를 삭제합니다.

주: 이벤트를 속성 유형으로 사용할 수 있습니다.

내부 이벤트

오브젝트가 자신에게 메시지를 보내면 내부 이벤트가 발생합니다. 내부 이벤트를 작성하려면 다음과 같이 보내기 조작에서 대상 오브젝트를 생략하십시오.

GEN(warmEngine(95))

private 이벤트

친교를 사용하여 어느 클래스가 어느 클래스에 대해 이벤트를 생성할 수 있는지 제어할 수 있습니다. 이런 방법으로 신뢰 클래스로부터만 이벤트가 수신되도록 보장할 수 있습니다. 이벤트 요청 및 큐잉 함수는 gen() 메소드(프레임워크 기본 클래스 OMReactive에서 기본적으로 공용임)를 통해 제어됩니다. 친교를 사용하여 이벤트 생성을 제어하려면 먼저 Share\oxf\OMReactive.hgen() 메소드를 보호하십시오. 이러한 노력은 일회성 노력입니다. 인스트루먼테이션에 사용되는 두 번째 gen() 메소드를 변경하지 마십시오.

각 애플리케이션 클래스 내부에서 이벤트를 생성해야 하는 클래스에 친교를 부여하십시오. 친교를 부여하지 않으면 프로그램이 더 이상 컴파일되지 않습니다.


피드백