더북(TheBook)

그러면 클라이언트는 G의 존재를 어떻게 알까요? 관련 이벤트 OnP2PMemberJoin()이 호출되면 알 수 있습니다. 다음 예시 코드를 살펴봅시다.

코드 [C++]

c->OnP2PMemberJoin = [...]
    (HostID memberHostID,  // ➊
    HostID groupHostID,    // ➋
    int memberCount,       // ➌
    const ByteArray &customField)
{
    G = groupHostID;       // ➍
    Peers.Add(memberHostID);
};  

 

코드 [C#]

c.P2PMemberJoinHandler =
    (memberHostID,    // ➊
    groupHostID,      // ➋
    memberCount,      // ➌
    customField)=>{
    G = groupHostID;  // ➍
    Peers.Add(memberHostID);
};

 

memberHostID가 가리키는 다른 호스트와 로컬 자기 자신과 P2P 연결이 맺어졌는지 의미합니다.

memberHostID와 로컬 자기 자신이 어느 P2P 그룹에 들어가 있는지 의미합니다.

이제 P2P 그룹에 호스트가 몇 개 들어가 있는지 의미합니다.

여러분 코드입니다. 지금 일단 필요한 것은 “내가 어느 P2P 그룹에 있고 나와 통신 가능한 다른 호스트들이 누구인지”를 보관하는 것입니다.

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