싱글톤 오브젝트

Singleton 스테레오타입으로 태그가 지정된 다중성 1의 오브젝트는 시스템의 수명 동안 한 번만 인스턴스화됩니다. 싱글톤 오브젝트는 C에서 struct 및 함수로 구현됩니다. 그러나 싱글톤 특성은 데이터에 대해 시행되지 않습니다.

싱글톤 오브젝트는 스펙 파일에서 struct로 선언됩니다. 예를 들면, 다음과 같습니다.

struct object_0_t {
    /* attributes of object_0 */
};

싱글톤 오브젝트는 구현 파일에서 다음과 같이 패키지 오브젝트로 인스턴스화됩니다.

struct object_0_t object_0;

싱글톤의 인스턴스는 하나만 있을 수 있으므로, 해당 오퍼레이션은 첫 번째 인수로 컨텍스트 포인터를 포함하지 않습니다. 예를 들어, 하나의 인수 a1을 가지고 있는 op1() 오퍼레이션이 있는 A 싱글톤 오브젝트의 경우 다음 함수 프로토타입이 생성됩니다.

/*## operation op1(int) */
void A_op1(int a1);

동일한 오브젝트가 싱글톤인 아닌 경우 다음 함수 프로토타입이 생성됩니다.

/*## operation op1(int) */
void A_op1(struct A_t* const me, int a1);

피드백