Partilhar via


Liberando dados de mesmo nível

Todos os ponteiros que as funções da Infraestrutura de Pares retornam devem ser liberados usando PeerGraphFreeData ou PeerFreeData. Essas funções só devem ser chamadas para estruturas que são retornadas diretamente por uma função de infraestrutura de mesmo nível. Não chame uma função FreeData diferente para libertar ponteiros aninhados, por exemplo, não chame uma função FreeData nos ponteiros numa estrutura PEER_RECORD.

Exemplo de liberação de dados

O trecho de código a seguir mostra como recuperar as propriedades associadas a um gráfico e, em seguida, liberar os dados retornados.

PEER_GRAPH_PROPERTIES  * pGraphProperties = NULL;
HRESULT hr = PeerGraphGetProperties(hGraph, &pGraphProperties);
if (SUCCEEDED(hr) && (NULL != pGraphProperties))
{
  // use pGraphProperties
  wprintf(L"%d\n", pGraphProperties->pwzGraphId);

  // release the data
  PeerGraphFreeData(pGraphProperties);
}