Partilhar via


Trabalhando com gráficos

Ao trabalhar com gráficos de pares, as funções devem ser chamadas em uma ordem específica. O fluxo de chamadas depende se você está criando ou abrindo um gráfico de pares. Este tópico identifica o fluxo de chamadas de função em um aplicativo de gráfico de pares simples.

Iniciando um gráfico

Antes de um aplicativo chamar uma função na API de Peer Graphing, PeerGraphStartup deve ser chamado para inicializar a API de Peer Graphing para um aplicativo e, em seguida, definir a versão suportada.

Criando um gráfico de pares

O procedimento a seguir identifica o fluxo de chamadas para a criação de um gráfico de pares.

Importante

Apenas um par deve chamar PeerGraphCreate. Todos os outros pares devem invocar PeerGraphOpen. Várias chamadas para PeerGraphCreate invalidam um grafo.

 

  • Crie um gráfico de pares. Chame PeerGraphCreate.

  • Registe-se para eventos entre pares. Inicie PeerGraphRegisterEvent.

    Observação

    Para obter mais informações sobre como se registrar para eventos pares, consulte Events Infrastructure.

     

  • Ouça as conexões com um gráfico de pares. Ligue PeerGraphListen.

  • Execute funções dependentes do aplicativo pelo restante do tempo de execução, por exemplo, processe eventos de mesmo nível e trabalhe com conexões.

  • Feche a conexão com um gráfico de pares. Chamar PeerGraphClose.

Abrindo um gráfico de pares

O fluxo de chamadas de função para abrir um gráfico de pares depende do valor de retorno da chamada para PeerGraphOpen. Os valores mais importantes são S_OK e PEER_S_DATA_CREATED, que são explicados nas seções a seguir deste tópico.

Observação

Se uma chamada para PeerGraphOpen não retornar S_OK ou PEER_S_DATA_CREATED, manipule o erro.

 

Quando PeerGraphOpen retorna S_OK

Quando uma chamada para PeerGraphOpen retorna S_OK, um gráfico de pares e um banco de dados existente foram abertos. O procedimento a seguir identifica o que você pode fazer para abrir um gráfico de pares quando uma chamada para PeerGraphOpen retorna S_OK

  • Registe-se para eventos entre pares. Chame PeerGraphRegisterEvent.

    Observação

    Para obter mais informações sobre como se registrar para eventos, consulte Events Infrastructure.

     

  • Localize um nó. Este é um processo realizado fora da infraestrutura de gráficos de pares, usando um método ou aplicativo que você identifica. A API de gráficos de pares não fornece um mecanismo específico para encontrar um nó gráfico inicial ao qual se conectar. Um aplicativo deve usar outro mecanismo, como o Peer Name Resolution Protocol (PNRP) API, para localizar o nó inicial.

  • Se um nó for encontrado, conecte-se a ele. Chame PeerGraphConnecte, em seguida, chame PeerGraphListen para ouvir conexões com o gráfico de pares.

    Observação

    Se um nó não for encontrado, não chame PeerGraphConnect e PeerGraphListen.

     

  • Executar funções dependentes da aplicação pelo restante do tempo de execução, por exemplo, processar eventos de pares e trabalhar com conexões, dependendo se o nó está conectado à rede de pares ou não. Por exemplo, o aplicativo pode optar por atingir o tempo limite ou executar periodicamente a descoberta de um nó ativo no gráfico.

  • Feche a conexão com o gráfico de pares. Chamar PeerGraphClose.

Quando PeerGraphOpen retorna PEER_S_DATA_CREATED

Quando PeerGraphOpen retorna PEER_S_DATA_CREATED, isso significa que um banco de dados existente para um gráfico de mesmo nível não é encontrado, um novo banco de dados é criado e esta é a primeira vez que ele é aberto. Para usar ou escutar num grafo de pares, um par deve estar conectado e sincronizado com um grafo de pares.

O procedimento a seguir identifica o que você pode fazer para abrir um gráfico de pares quando uma chamada para PeerGraphOpen retorna PEER_S_DATA_CREATED.

  • Abra um gráfico de pares. Chamar PeerGraphOpen.

  • Registe-se para eventos entre pares. Chame PeerGraphRegisterEvent.

    Observação

    Para obter mais informações sobre como se registrar para eventos pares, consulte Events Infrastructure.

     

  • Localize um nó. Este é um processo realizado fora da infraestrutura de gráficos de pares, usando um método ou aplicativo que você identifica. A API de gráficos de pares não fornece um mecanismo específico para encontrar um nó gráfico inicial ao qual se conectar. Uma aplicação deve usar outro mecanismo, como o Peer Name Resolution Protocol (PNRP) API, para localizar o nó inicial.

  • Se um nó for encontrado, conecte-se a ele. Chame PeerGraphConnecte, em seguida, chame PeerGraphListen para ouvir conexões com o gráfico de pares.

    Observação

    Se um nó não for encontrado, não chame PeerGraphConnect e PeerGraphListen .

     

  • Execute funções dependentes da aplicação durante o restante do tempo de execução, por exemplo, processe eventos de pares e trabalhe com conexões, dependendo se o nó está conectado ao grafo de pares ou não. Por exemplo, a aplicação pode optar por estabelecer um tempo limite ou realizar periodicamente a descoberta de um nó ativo no gráfico.

  • Feche a conexão com o gráfico de pares. Chamada PeerGraphClose.