Compartir a través de


WinAsyncAPPCIOCP

La función WinAsyncAPPCIOCP proporciona un punto de entrada asincrónico para todos los verbos APPC. Use esta función en lugar de las versiones de bloqueo de los verbos para permitir que varias sesiones se controlen en el mismo subproceso mediante puertos de finalización de E/S. Este verbo solo se admite en Microsoft Windows y usa puertos de finalización de E/S de Win32.

Sintaxis

  
    HANDLE WINAPI WinAsyncAPPCIOCP(   
APPC_IOCP_INFO *iocp_handle,  
longlpVcb);  

Parámetros

iocp_handle
Puntero a una estructura de APPC_IOCP_INFO utilizada para pasar información del puerto de finalización de E/S.

lpVcb
Puntero al bloque de control de verbos

La estructura APPC_IOCP_INFO tiene el siguiente prototipo:

  
APPC_CompletionPort;APPC_NumberOfBytesTransferred;  
    APPC_CompletionKey;  
    APPC_pOverlapped;  
  

APPC_CompletionPort

Este parámetro proporcionado es el IDENTIFICADOR devuelto por la llamada a la función CreateIoCompletionPort cuando se crea el puerto de finalización de E/S. El puerto de finalización de E/S debe crearse antes de llamar a la función WinAsyncAPPCIOCP . Cuando se completa el verbo, la biblioteca APPC llama a la función PostQueuedCompletionStatus con los campos restantes de la estructura como entradas, y estos campos simplemente se pasan a la función GetQueuedCompletionStatus emitida por la aplicación.

APPC_NumberOfBytesTransferred

Este parámetro proporcionado se omite. Cuando se completa el verbo APPC, la biblioteca appc llama a la función PostQueuedCompletionStatus con este campo como entrada y el valor devuelto para dwNumberOfBytesTransferred simplemente se pasa a través de la función GetQueuedCompletionStatus emitida por la aplicación.

APPC_CompletionKey

Este parámetro proporcionado se omite. Cuando se completa el verbo APPC, la biblioteca APPC llama a la función PostQueuedCompletionStatus con este campo como entrada y el valor devuelto para dwCompletionKey simplemente se pasa a la función GetQueuedCompletionStatus emitida por la aplicación.

APPC_pOverlapped

Este parámetro proporcionado se omite. Cuando se completa el verbo APPC, la biblioteca de APPC llama a la función PostQueuedCompletionStatus con este campo como entrada y el valor devuelto para el lpOverlapped simplemente se pasa a la función GetQueuedCompletionStatus emitida por la aplicación.

Valor devuelto

El valor devuelto especifica si la solicitud de resolución asincrónica se realizó correctamente. Si la función se realizó correctamente, el valor devuelto es un identificador de tarea asincrónico. Si la función no se realizó correctamente, se devuelve un cero.

Cuando esta función vuelve con un valor correcto, esto no indica que la llamada a APPC se devolverá correctamente. Solo indica que era posible que la biblioteca appc intente realizar la llamada de APPC de forma asincrónica mediante un puerto de finalización de E/S para la notificación.

Comentarios

Esta función está pensada para su uso con CreateIoCompletionPort y GetQueuedCompletionStatus en la API de Win32. Estas funciones se describen en la sección "Referencia" de la documentación de Microsoft Platform SDK.

Para obtener un ejemplo de cómo usar este verbo en TP multiproceso, consulte el TP de recepción multiproceso (MRCVIO ubicado en la carpeta SNA\MSENDRCV) mediante puertos de finalización de E/S incluidos en el SDK de Host Integration Server.

Los verbos appC usados en conversaciones básicas que pueden bloquear son los siguientes: