Compartir a través de


Cancelación de llamadas

La notificación de cancelación de llamadas cancela la operación de operaciones de servicio del lado servidor y devoluciones de llamada del modelo de servicio. Esta cancelación puede deberse a una de estas dos razones:

  • El host de servicio ha detenido las operaciones debido a una llamada a la función WsAbortServiceHost.
  • El canal subyacente ha generado un error.

Para recibir una notificación de cancelación, la operación de servicio o la devolución de llamada del modelo de servicio deben registrar una devolución de llamada WS_OPERATION_CANCEL_CALLBACK llamando a la funciónWsRegisterOperationForCancel.

Opcionalmente, como parte del registro para la notificación de cancelación, la operación de servicio o la devolución de llamada del modelo de servicio también pueden registrar datos de estado específicos de la aplicación y la devolución de llamada WS_OPERATION_FREE_STATE_CALLBACK.

Los datos de estado están disponibles para la devolución de llamada WS_OPERATION_CANCEL_CALLBACK. Al finalizar la llamada, se llama a la WS_OPERATION_FREE_STATE_CALLBACK devolución de llamada para dar a la aplicación la oportunidad de liberar los datos de estado.

Para obtener un ejemplo de código, vea BlockingServiceExample.

La devolución de llamada de cancelación solo se llama una vez durante la vigencia de las operaciones de servicio del lado servidor o función de devolución de llamada.

La cancelación de llamadas está disponible en para todas las devoluciones de llamada del host de servicio que toman WS_OPERATION_CONTEXT como parámetro.

Los siguientes elementos de API se relacionan con la cancelación de llamadas.

Callback Descripción
WS_OPERATION_CANCEL_CALLBACK Invocado por el modelo de servicio para notificar una cancelación de una operación de servicio asincrónica como resultado de un apagado anulado del host de servicio.
WS_OPERATION_FREE_STATE_CALLBACK Invocado por el modelo de servicio para permitir que una aplicación limpie los datos de estado registrados con la devolución de llamada de cancelación.

 

Función Descripción
WsRegisterOperationForCancel Permite que una operación de servicio o una devolución de llamada del modelo de servicio se registren para una notificación de cancelación.