Skip to main content

XTaskQueueDispatch

Procesa un elemento de la cola de tareas para el puerto especificado.

Sintaxis

Parámetros

queue   _In_
Tipo: XTaskQueueHandle
La cola en la que se distribuirá el trabajo. port   _In_
Tipo: XTaskQueuePort
El puerto que se distribuirá. timeoutInMs   _In_
Tipo: uint32_t
El número de milisegundos que se esperará a que llegue trabajo antes de devolver false. Puede pasar INFINITE para esperar indefinidamente.

Valor devuelto

Tipo: bool Devuelve true si esta función distribuyó una llamada o false si no lo hizo. Esta función también devolverá false si la cola finaliza, incluso si se pasa INFINITE como tiempo de espera.

Comentarios

Puede pasar un tiempo de espera, lo que hará que XTaskQueueDispatch espere a que llegue algo a la cola. Si un puerto de una cola de tareas se creó con los modos de distribución XTaskQueueDispatchMode::ThreadPool, XTaskQueueDispatchMode::SerializedThreadPool o XTaskQueueDispatchMode::Immediate, distribuirá las devoluciones de llamada automáticamente. Para los puertos de distribución manual, debe llamar a XTaskQueueDispatch. Se puede llamar a XTaskQueueDispatch con cualquier modo de distribución, pero tenga en cuenta que las llamadas siempre se distribuyen en el subproceso que llama a XTaskQueueDispatch. alerta Nota de rendimiento:
Agregar un elemento a una cola debe ser una operación sin bloqueos ni esperas para satisfacer los requisitos de rendimiento del código de niveles superiores. Las siguientes API no usan bloqueos:
alerta Nota de rendimiento:
La cantidad de tiempo empleada por XTaskQueueDispatch al procesar un elemento del puerto de trabajo es variable y depende del trabajo que se esté realizando. En algunos casos, el subproceso que realiza la llamada podría bloquearse a la espera de que se complete otro trabajo del sistema.
En el ejemplo siguiente se muestra cómo usar la función XTaskQueueDispatch para procesar elementos de la cola de tareas.
SubmitCallback es una función auxiliar que se define en el ejemplo de código de la función XTaskQueueSubmitCallback.

Requisitos

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

Documentación conceptual

Consulte también

Miembros de XTaskQueue
Modelo de programación asincrónica
Diseño de la cola de tareas asincrónicas
Última modificación el 28 de agosto de 2026