Temporización de una notificación
Hace referencia a: Outlook 2013 | Outlook 2016
Dado que la notificación de eventos es un proceso asincrónico, se le puede notificar en cualquier momento, no necesariamente inmediatamente después de que se haya producido el evento.
El tiempo de las llamadas al método IMAPIAdviseSink::OnNotify varía en función del proveedor de servicios que implemente el origen de aviso. Los proveedores de servicios pueden notificar al cliente:
Simultáneamente con el evento.
Directamente después del evento.
En algún momento posterior después del evento, posiblemente después de una llamada a Unadvise .
La mayoría de los proveedores de servicios llaman a OnNotify después de que el método MAPI responsable del evento haya devuelto a su llamador. Por ejemplo, las notificaciones de los mensajes se envían cuando se guardan los cambios en el mensaje, después de la llamada IMAPIProp::SaveChanges o cuando se libera el mensaje, después de la llamada IUnknown::Release . Hasta que se envía la notificación, no hay cambios visibles en el almacén de mensajes.
Puede recibir notificaciones de un origen de aviso después de haber llamado a Unadvise para cancelar un registro. Asegúrese de liberar el receptor de aviso solo después de que su recuento de referencias haya caído a cero, no después de una llamada a Unadvise correcta. No suponga que, dado que ha llamado a Unadvise , el receptor de aviso ya no es necesario.