3 votes

question sur le retour en arrière d'un processus simple

En révisant pour un examen, je suis tombé sur cette question simple concernant les retours en arrière dans les processus. Je comprends comment les retours en arrière se produisent, mais j'ai besoin de valider ma réponse. La question :

alt textalt text

ma confusion vient du fait qu'il y a une communication interprocessus entre les processus. cela change-t-il quelque chose en termes d'emplacement du retour en arrière ? ma réponse serait R13, R23, R32 et R43. toute aide est grandement appréciée ! merci !

1voto

Peter Lawrey Points 229686

Vous devez revenir en arrière jusqu'à ce que le processus puisse être redémarré de manière cohérente. La communication interprocessus signifie que vous ne pouvez pas faire en sorte qu'un processus se rétablisse après une communication et un autre avant cette communication.

P3 doit revenir à R32. Les autres processus doivent donc revenir à une situation antérieure à toute communication ultérieure.

0voto

Karmastan Points 4092

Il y a une règle à suivre : vous ne pouvez pas revenir en arrière à un point où un processus a reçu un message qui n'a pas encore été envoyé. Si vous suivez cette règle, votre point de contrôle global sera cohérent .

Vous devez également décider des processus à annuler. Ne jetez pas le travail si vous n'êtes pas obligé de le faire. Le seul fil que vous êtes tenu de rétablir est celui qui est défectueux. Les autres ne doivent revenir en arrière que pour rendre le point de contrôle cohérent.

Selon moi, une réponse aux points (i)-(iv) sera différente des trois autres (qui seront les mêmes).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X