Skip to main content

XNetworkingRegisterPreferredLocalUdpMultiplayerPortChanged

Registra una función de devolución de llamada a la que llamar cuando cambia el puerto multijugador UDP local preferido.

Sintaxis

Parámetros

queue   _In_opt_
Tipo: XTaskQueueHandle
Cola en la que se registra la devolución de llamada. Se usan tanto el lado de trabajo como el lado de finalización de la cola. context   _In_opt_
Tipo: void*
Puntero de contexto opcional que se pasa a la devolución de llamada. callback   _In_
Tipo: XNetworkingPreferredLocalUdpMultiplayerPortChangedCallback*
Función de devolución de llamada a la que llamar cuando cambia el puerto preferido. token   _Out_
Tipo: XTaskQueueRegistrationToken*
Token que se usa para identificar la devolución de llamada al llamar a XNetworkingUnregisterPreferredLocalUdpMultiplayerPortChanged.

Valor devuelto

Tipo: HRESULT Código HRESULT de éxito o de error.

Comentarios

El registro para una notificación de cambio del puerto multijugador local preferido del protocolo de datagramas de usuario (UDP) siempre desencadena una devolución de llamada de notificación inicial. Se realizan todos los intentos posibles para garantizar que el puerto multijugador UDP local preferido no cambie mientras se ejecuta un título. Sin embargo, hay casos inevitables en los que el puerto cambiará debido a que las condiciones de red externas del usuario cambian e invalidan los flujos de socket existentes. En concreto, es mucho más probable que el puerto cambie cuando cambia el nivel de conectividad de red o como parte de un ciclo de suspensión y reanudación del título. Cuando cambia el puerto multijugador UDP local preferido, las conexiones entrantes adicionales de futuros pares pueden bloquearse en cualquier puerto preferido anterior. Esto puede no provocar un error en la capa de socket, pero es posible que el título deje de recibir paquetes en cualquier socket enlazado a cualquier puerto preferido anterior. Los paquetes enviados hacia y desde los pares existentes pueden seguir funcionando, por lo que una notificación de cambio del puerto multijugador UDP local preferido puede no ser fatal para ninguna sesión de juego en curso. Cuando se produce una notificación de cambio, el título debe migrar a un nuevo socket enlazado en el nuevo puerto preferido en cuanto sea posible sin interrumpir el juego existente. Si el título detecta una pérdida de conexión y reintenta la conexión del socket, el título siempre debe usar el puerto preferido más reciente. Este método consulta el estado local dentro del proceso que realiza la llamada y se devuelve rápidamente, por lo que es seguro llamarlo desde contextos con restricciones de tiempo.

Requisitos

Encabezado: XNetworking.h Biblioteca: xgameruntime.lib Plataformas compatibles: Windows, consolas de la familia XBOX One y consolas XBOX Series

Documentación conceptual

Consulte también

API de red del puerto multijugador UDP local preferido
XNetworking
Última modificación el 28 de agosto de 2026