> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XNetworkingRegisterPreferredLocalUdpMultiplayerPortChanged

> XNetworkingRegisterPreferredLocalUdpMultiplayerPortChanged

# XNetworkingRegisterPreferredLocalUdpMultiplayerPortChanged

Registra uma função de retorno de chamada a ser chamada quando a porta multijogador UDP local preferencial for alterada.

## Sintaxe

```cpp theme={null}
HRESULT XNetworkingRegisterPreferredLocalUdpMultiplayerPortChanged(
         XTaskQueueHandle queue,
         void* context,
         XNetworkingPreferredLocalUdpMultiplayerPortChangedCallback* callback,
         XTaskQueueRegistrationToken* token
)
```

### Parâmetros

*queue*   \_In\_opt\_\
Tipo: XTaskQueueHandle

Fila na qual registrar o retorno de chamada. Tanto o lado de trabalho quanto o lado de conclusão da fila são usados.

*context*   \_In\_opt\_\
Tipo: void\*

Ponteiro de contexto opcional a ser passado para o retorno de chamada.

*callback*   \_In\_\
Tipo: [XNetworkingPreferredLocalUdpMultiplayerPortChangedCallback](/pt-BR/reference/networking/xnetworking/functions/xnetworkingpreferredlocaludpmultiplayerportchangedcallback)\*

Função de retorno de chamada a ser chamada quando a porta preferencial for alterada.

*token*   \_Out\_\
Tipo: [XTaskQueueRegistrationToken](/pt-BR/reference/system/xtaskqueue/structs/xtaskqueueregistrationtoken)\*

Token usado para identificar o retorno de chamada ao chamar [XNetworkingUnregisterPreferredLocalUdpMultiplayerPortChanged](/pt-BR/reference/networking/xnetworking/functions/xnetworkingunregisterpreferredlocaludpmultiplayerportchanged).

### Valor retornado

Tipo: HRESULT

Código de sucesso ou de erro HRESULT.

## Comentários

O registro para receber notificações de alteração da porta multijogador UDP (User Datagram Protocol) local preferencial sempre dispara um retorno de chamada de notificação inicial.

Todas as tentativas são feitas para garantir que a porta multijogador UDP local preferencial não seja alterada enquanto um título estiver em execução. No entanto, há casos inevitáveis em que a porta será alterada devido a mudanças nas condições de rede externa do usuário que invalidam quaisquer fluxos de soquete existentes. Em particular, a probabilidade de a porta ser alterada é muito maior quando o [nível de conectividade de rede](/pt-BR/build/console-features/networking/initialization-connectivity-networking) é alterado ou como parte de um ciclo de suspensão/retomada do título.

Quando a porta multijogador UDP local preferencial é alterada, conexões de entrada adicionais de pares futuros podem ser bloqueadas em qualquer porta preferencial anterior. Isso pode não causar uma falha na camada de soquete, mas o título pode eventualmente parar de receber pacotes em qualquer soquete associado a qualquer porta preferencial anterior.

Os pacotes enviados de e para pares existentes podem continuar funcionando e, portanto, uma notificação de alteração da porta multijogador UDP local preferencial pode não ser fatal para qualquer sessão de jogo em andamento.

Quando ocorrer uma notificação de alteração, o título deverá migrar para um novo soquete associado à nova porta preferencial na primeira oportunidade, sem interromper nenhuma jogabilidade existente. Se o título detectar uma perda de conexão e tentar novamente a conexão de soquete, ele deverá sempre usar a porta preferencial mais recente.

Esse método consulta o estado local no processo de chamada e retorna rapidamente, portanto, é seguro chamá-lo a partir de contextos sensíveis ao tempo.

## Requisitos

**Cabeçalho:** XNetworking.h

**Biblioteca:** xgameruntime.lib

**Plataformas com suporte:** Windows, consoles da família XBOX One e consoles XBOX Series

## Documentação conceitual

* [Porta multijogador UDP preferencial](/pt-BR/build/console-features/networking/game-mesh/preferred-local-udp-multiplayer-port-networking)

## Confira também

[APIs de rede da porta multijogador UDP local preferencial](/pt-BR/build/console-features/networking/game-mesh/preferred-local-udp-multiplayer-port-networking)\
[XNetworking](/pt-BR/reference/networking/xnetworking/xnetworking_members)


## Related topics

- [XNetworkingRegisterPreferredLocalUdpMultiplayerPortChanged](/reference/networking/xnetworking/functions/xnetworkingregisterpreferredlocaludpmultiplayerportchanged.md)
- [XNetworkingPreferredLocalUdpMultiplayerPortChangedCallback](/es/reference/networking/xnetworking/functions/xnetworkingpreferredlocaludpmultiplayerportchangedcallback.md)
- [XNetworkingUnregisterPreferredLocalUdpMultiplayerPortChanged](/reference/networking/xnetworking/functions/xnetworkingunregisterpreferredlocaludpmultiplayerportchanged.md)
- [Preferred local UDP multiplayer port networking APIs](/build/console-features/networking/game-mesh/preferred-local-udp-multiplayer-port-networking.md)
- [XNetworkingQueryPreferredLocalUdpMultiplayerPortAsync](/reference/networking/xnetworking/functions/xnetworkingquerypreferredlocaludpmultiplayerportasync.md)
