더북(TheBook)

서버에서 클라이언트로 원격으로 함수를 호출하려면 앞서 선언했던 <서버=>클라이언트> RMI, 즉 CalcS2C를 서버와 클라이언트에 붙여야 합니다. CalcS2C의 Proxy는 서버에 붙이고 CalcS2C의 Stub은 클라이언트에 붙인다는 점에 유의하세요. 붙이고 나면 클라이언트에서 수신하는 곳도 만들어야 합니다. 방법은 서버 측 수신 코드와 같습니다.

코드 [C++]

CalcS2CStub.ResponseAdd_Function =
    []PARAM_CalcS2CStub_ResponseAdd
    {
        print(sum);
    };

 

코드 [C#]

CalcS2CStub.ResponseAdd =
    (remote, rmiContext, sum)
    {
        print(sum);
    };

 

RMI를 세팅하는 과정은 처음에는 번거롭습니다. 그렇지만 메시지 종류가 많아지고 프로그램이 복잡해지면 RMI가 더 편리합니다. 상용 온라인 게임에서 메시지 종류는 수백 개에서 수천 개에 이릅니다. 이를 모두 RMI 없이 수동으로 송수신 코드를 만든다고 상상해 보세요! 처음 고생을 감내할 만하죠?

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.