État du canal asynchrone

Cette page décrit l’état du canal asynchrone pour les appels RPC.

DANS le canal

Comportement du client

State Nom d’état Action
C Effectuer l’appel Rendre le RPC
  • En cas de réussite, accédez à l’État WS
  • En cas d’exception, aller à la fin
Pour échec : atteindre peut
P Envoi (push) Créer un push
  • En cas d’échec, aller à la fin
  • En cas de réussite, accédez à WS
Pour échec : atteindre peut
WS Attendre l’envoi Attendre la notification
  • En cas d’échec d’une notification, accédez à CAN
  • Si un RpcSendComplete de réussite est reçu et que davantage de données doivent être envoyées, accédez à P
  • Si un RpcSendComplete de réussite est reçu et que davantage de données n’ont pas besoin d’être envoyées, accédez à NP
  • Si une erreur RpcCallComplete est reçue, Go COMP
Pour échec : atteindre peut
NP Push null Push 0 octets (push null)
  • En cas d’échec, aller à la fin
  • En cas de réussite, accédez à WComp
Pour échec : atteindre peut
Puissiez Annuler l’appel Appeler RpcAsyncCancelCallaccéder à WComp
WComp Attendre la fin de l’opération L’attente de la notification de fin de notificationCall doit être reçue.
Aller à la comp.
Conformes Completion Problème RpcAsyncCompleteCallaller à la fin
End

Comportement du serveur

State Nom d’état Action
D Dispatch L’appel est distribué par le runtime RPC accéder à P
Pour échouer irrémédiablement (lors de l’exécution sur le thread RPC) : lever l’exception ; aller à la fin
Pour échouer correctement : accédez à un
P Extraction Créer une extraction
  • En cas d’échec, aller à la fin
  • En cas de réussite et d’achèvement synchrone avec des octets non nuls lus, accéder à P
  • En cas de réussite et d’achèvement synchrone avec zéro octet de lecture (extraction null), atteindre la comp.
  • En cas de réussite et d’achèvement asynchrone (retournée ERROR_IO_PENDING), accédez à WP
Pour faire échouer : accédez à un
WP Attendre l’extraction Attendre la notification
  • En cas d’échec de la saisie semi-automatique, accédez à
  • Si une erreur RpcReceiveComplete est reçue, accédez à un
  • Si un RpcReceiveComplete de réussite est reçu avec des octets non nuls lus, aller à P
  • Si un RpcReceiveComplete de réussite est reçu avec zéro octet de lecture (extraction null), atteindre la comp.
  • Si une défaillance est reçue, accédez à un
Pour faire échouer : accédez à un
Un Abandonner l’appel Appeler RpcAsyncAbortCallaller à la fin
Conformes Completion Appeler RpcAsyncCompleteCallaller à la fin
End

Canal de sortie

Comportement du client

State Nom d’état Action
C Effectuer l’appel Rendre le RPC
  • En cas de réussite, accédez à P
  • En cas d’échec, accédez à COMP
Pour échec : atteindre peut
P Extraction Créer une extraction
  • En cas d’échec, aller à la fin
  • En cas de réussite et d’achèvement synchrone avec des octets non nuls lus, accéder à P
  • En cas de réussite et d’achèvement synchrone avec zéro octet de lecture (extraction null), accédez à WComp
  • En cas de réussite et d’achèvement asynchrone (retournée ERROR_IO_PENDING), accédez à WP
Pour échec : atteindre peut
WP Attendre l’extraction Attendre la notification
  • En cas d’échec de la saisie semi-automatique, accédez à CAN
  • Si une erreur RpcReceiveComplete est reçue, accéder à peut
  • Si un RpcReceiveComplete de réussite est reçu avec des octets non nuls lus, aller à P
  • Si un RpcReceiveComplete de réussite est reçu avec zéro octet de lecture (extraction null), atteindre la comp.
  • Si une défaillance est reçue, Go peut
Pour échec : atteindre peut
Puissiez Annuler l’appel Appeler RpcAsyncCancelCallaccéder à WComp
WComp Attendre la fin de l’opération Attendre la notification. La notification de fin d’appel doit être reçue.
Aller à la comp.
Conformes Completion Problème RpcAsyncCompleteCallaller à la fin
End

Comportement du serveur

State Nom d’état Action
D Dispatch L’appel est distribué par le runtime RPC accéder à P
Pour échouer irrémédiablement (lors de l’exécution sur le thread RPC) : lever l’exception ; aller à la fin
Pour échouer correctement : accédez à un
P Envoi (push) Créer un push
  • En cas de réussite, accédez à WP
  • En cas d’échec, aller à la fin
Pour faire échouer : accédez à un
WP Attendre la notification push Attendre la notification
  • En cas d’échec de la saisie semi-automatique, accédez à
  • Si un RpcSendComplete de réussite est reçu et que davantage de données doivent être envoyées, accédez à P
  • Si un RpcSendComplete de réussite est reçu et que davantage de données n’ont pas besoin d’être envoyées, accédez à NP
  • Si une défaillance est reçue, cliquez sur COMP
Pour faire échouer : accédez à un
NP Push null Pousser 0 octets
  • en cas de réussite, accédez à WNP
  • en cas d’échec, accédez à COMP
Pour faire échouer : accédez à un
WNP Attendre une notification push null Attendre la notification
  • En cas d’échec de la saisie semi-automatique, accédez à
  • Si une défaillance est reçue, cliquez sur COMP
  • Si une réussite est reçue, Go COMP
Un Abandonner l’appel Appelez RpcAsyncAbortCall; aller à la fin
Conformes Completion Problème RpcAsyncCompleteCall; aller à la fin
End

Canal de sortie

Comportement du client

State Nom d’état Action
C Effectuer l’appel Rendre le RPC
  • En cas de réussite, accédez à WS
  • En cas d’exception, aller à la fin
Pour échec : atteindre peut
PS Envoi (push) Créer un push
  • En cas d’échec, aller à la fin
  • En cas de réussite, accédez à WS
Pour échec : atteindre peut
WS Attendre l’envoi Attendre la notification
  • En cas d’échec d’une notification, accédez à CAN
  • Si un RpcSendComplete de réussite est reçu et que davantage de données doivent être envoyées, accédez à PS
  • Si un RpcSendComplete de réussite est reçu et que davantage de données n’ont pas besoin d’être envoyées, accédez à NP
  • Si une erreur RpcCallComplete est reçue, Go COMP
Pour échec : atteindre peut
NP Push null Push 0 octets (push null)
  • En cas d’échec, aller à la fin
  • En cas de réussite, accédez à PL
Pour échec : atteindre peut
PL Extraction Créer une extraction
  • En cas d’échec, aller à la fin
  • En cas de réussite et d’achèvement synchrone avec des octets non nuls lus, accédez à PL
  • En cas de réussite et d’achèvement synchrone avec zéro octet de lecture (extraction null), accédez à WComp
  • En cas de réussite et d’achèvement asynchrone (ERROR_IO_PENDING est retourné), accédez à WPL
Pour échec : atteindre peut
WPL Attendre l’extraction Attendre la notification
  • En cas d’échec de la saisie semi-automatique, accédez à CAN
  • Si une erreur RpcReceiveComplete est reçue, accéder à peut
  • Si un RpcReceiveComplete de réussite est reçu avec des octets non nuls lus, accédez à pl
  • Si un RpcReceiveComplete de réussite est reçu avec zéro octet lu atteindre la comp.
  • Si une défaillance est reçue, Go peut
Pour échec : atteindre peut
Puissiez Annuler l’appel Appeler RpcAsyncCancelCallaccéder à WComp
WComp Attendre la fin de l’opération Attendre la notification. La notification CallComplete doit être reçue.
Aller à la comp.
Conformes Completion Problème RpcAsyncCompleteCallaller à la fin
End

Comportement du serveur

State Nom d’état Action
D Dispatch L’appel est distribué par le runtimeGo RPC à PL
Pour échouer irrémédiablement (lors de l’exécution sur le thread RPC) : lever l’exception ; aller à la fin
Pour échouer correctement : accédez à un
PL Extraction Créer une extraction
  • En cas d’échec, aller à la fin
  • En cas de réussite et d’achèvement synchrone avec des octets non nuls lus, accédez à PL
  • En cas de réussite et d’achèvement synchrone avec zéro octet de lecture (extraction null), accédez à PS
  • En cas de réussite et d’achèvement asynchrone (ERROR_IO_PENDING est retourné), accédez à WPL
Pour faire échouer : accédez à un
WPL Attendre l’extraction Attendre la notification
  • En cas d’échec de la saisie semi-automatique, accédez à
  • Si une erreur RpcReceiveComplete est reçue, accédez à un
  • Si un RpcReceiveComplete de réussite est reçu avec des octets non nuls lus, accédez à pl
  • Si un RpcReceiveComplete de réussite est reçu avec zéro octet lu, accédez à PS
  • Si une défaillance est reçue, accédez à
Pour faire échouer : accédez à un
PS Envoi (push) Créer un push
  • En cas de réussite, accédez à WPS
  • En cas d’échec, aller à la fin
Pour faire échouer : accédez à un
WP Attendre la notification push Attendre la notification
  • En cas d’échec de la saisie semi-automatique, accédez à
  • Si un RpcSendComplete de réussite est reçu et que davantage de données doivent être envoyées, accédez à PS
  • Si un RpcSendComplete de réussite est reçu et que davantage de données n’ont pas besoin d’être envoyées, accédez à NP
  • Si une défaillance est reçue, cliquez sur COMP
Pour faire échouer : accédez à un
NP Push null Pousser 0 octets
  • en cas de réussite, accédez à WNP
  • en cas d’échec, accédez à COMP
Pour faire échouer : accédez à un
WNP Attendre une notification push null Attendre la notification
  • En cas d’échec de la saisie semi-automatique, accédez à
  • Si une défaillance est reçue, cliquez sur COMP
  • Si une réussite est reçue, Go COMP

Un Abandonner l’appel Appelez RpcAsyncAbortCall; aller à la fin
Conformes Completion Problème RpcAsyncCompleteCall; aller à la fin
End