![Citation](https://forum.developpez.be/images/misc/quote_icon.png)
Envoyé par
koala01
Salut,
De manière générale, dés que tu as une donnée partagée à laquelle tu dois accéder en écriture / modification dans un thead, tu dois veiller à ce que cette écriture / modification soit, au minimum, protégée par un mutex et sans doute par du "double checking".
En effet, si tu ne prend pas cette précaution élémentaire, de te trouver dans une situation dans laquelle deux (ou plusieurs) threads risquent de vouloir... modifier la variable partagée en même temps, avec des résultats parfois surprenants.
Ce qui semble donc le plus intéressant est donc:
1- de créer une file de gestion des informations à écrire. Cette file peut être alimentée par plusieurs threads (seul le "raccordement" des nouveaux éléments devant être protégé par rapport à des accès concurrents).
2- d'utiliser un thread unique qui se chargera d'écrire dans un fichier le contenu de la file définie plus haut.
Partager