CHOU

[MSRDS] CCR에서 PortSet 이 하는 기능 알아보기 본문

Tech/Microsoft Products

[MSRDS] CCR에서 PortSet 이 하는 기능 알아보기

chobabo 2009. 3. 20. 23:38

 PortSet은 멀티 배열과 같이 여러 형식의 값을 저장할 수 있는데 PortSet에 값을 추가하기 위해서는 Post 메소드를 사용해야 하며, 값을 읽어오기 위해서는 Test 명령을 사용하면 됩니다.

 PortSet의 기능을 알아보기 위해서 http://cafe.naver.com/msrskorea 에 김영준 수석님께서 올려주신 예제를 구현해 보겠습니다.

1. C# Windows Form Application 프로젝트를 생성합니다.


그림1. 프로젝트 생성화면



2. 레퍼런스에 Microsoft.Ccr.Core.dll 을 추가해 주고 코드 상단에 선언해 줍니다.


그림2. .NET 레퍼런스 창 화면


//add code
using Microsoft.Ccr.Core;
using Microsoft.Ccr.Core.Arbiters;



3. Form 에 버튼 1개와 리스트 박스 1개를 추가해 줍니다.

그림3. 폼 화면



4. Button 이벤트 부분에 아래와 같은 코드를 추가해 줍니다.

        private void button1_Click(object sender, EventArgs e)
        {
            PortSet<int, String> myPortSet = new PortSet<int, string>();

            myPortSet.Post(1);

            //or
            myPortSet.P0.Post(2);

            myPortSet.Post("Hi");

            //or
            myPortSet.P1.Post("Hello");

            int retInt = 0;

            //while (myPortSet.P0.Test(out retInt))
            {
                listBox1.Items.Add("Int:" + retInt.ToString());
            }

            String retStr = null;

            while(myPortSet.P1.Test(out retStr))
            {
                listBox1.Items.Add("String: " + retStr);
            }
        }

5. 컴파일하고 버튼을 클릭하면 아래와 같은 결과가 생성되면 올바르게 예제를 수행한 것 입니다.


그림 4. 결과 화면 창


 myPortSet 이라는 이름으로 int와 String 값만을 받아 들이는 PortSet을 정의하였고, 이 PortSet에 각 타입의 데이터를 등록한 후, 각 타입별로 값을 읽어오는 코드 입니다.



6. 아래의 영상은 예제를 실행한 것으로, 위의 예제가 잘 안되시는 분들은 참고하시면 좋을 것 같습니다.

영상1. 실행 결과 영상

참고자료

1. http://cafe.naver.com/msrskorea (MSRDS 네이버 공식 카페)

2. 예제 코드파일