Merci pour ton commentaire. En effet, dans ce bout de code isolé le volatile n'est pas nécessaire. Mais l'idée était de faire une attente non bloquante, donc venir comparer régulièrement la valeur de COUNT avec une valeur de référence.
Et dans ce cas le volatile me semble indispensable.
Pour la remarque b, c'est aussi vrai. Cependant dans notre cas, il n'y a que l'interruption qui modifie la valeur de COUNT, tous les autres accès ne sont qu'en lecture.
[^] # Re: u32++ n'est pas atomique
Posté par uneTanche (site web personnel, Mastodon) . En réponse au journal Découverte de rust pour l'embarqué 2. Évalué à 3 (+2/-0).
Merci pour ton commentaire. En effet, dans ce bout de code isolé le
volatilen'est pas nécessaire. Mais l'idée était de faire une attente non bloquante, donc venir comparer régulièrement la valeur deCOUNTavec une valeur de référence.Par exemple:
Et dans ce cas le
volatileme semble indispensable.Pour la remarque b, c'est aussi vrai. Cependant dans notre cas, il n'y a que l'interruption qui modifie la valeur de COUNT, tous les autres accès ne sont qu'en lecture.