그러면 클라이언트는 G의 존재를 어떻게 알까요? 관련 이벤트 OnP2PMemberJoin()이 호출되면 알 수 있습니다. 다음 예시 코드를 살펴봅시다.
코드 [C++]
c->OnP2PMemberJoin = [...]
(HostID memberHostID, // ➊
HostID groupHostID, // ➋
int memberCount, // ➌
const ByteArray &customField)
{
G = groupHostID; // ➍
Peers.Add(memberHostID);
};
코드 [C#]
. = (, // ➊ , // ➋ , // ➌ )=>{ = ; // ➍ .Add(); };
➊ memberHostID가 가리키는 다른 호스트와 로컬 자기 자신과 P2P 연결이 맺어졌는지 의미합니다.
➋ memberHostID와 로컬 자기 자신이 어느 P2P 그룹에 들어가 있는지 의미합니다.
➌ 이제 P2P 그룹에 호스트가 몇 개 들어가 있는지 의미합니다.
➍ 여러분 코드입니다. 지금 일단 필요한 것은 “내가 어느 P2P 그룹에 있고 나와 통신 가능한 다른 호스트들이 누구인지”를 보관하는 것입니다.