Bonjour,

j'inaugure mon premier message en espérant ne pas m'être trompé de catégorie. Je suis confronté à une problématique pour laquelle je n'ai pas encore trouvé de solution satisfaisante.

Soit une classe A, contenant une liste de pointeurs sur une classe B std::list<B*>. Cette classe A est amenée à fournir à des classes utilisatrices des pointeurs sur B issus de cette liste.

Les classes utilisatrices ont des instances dans différents threads fonctionnant en parallèle.

La classe A doit, à la survenance de certains évènements, supprimer des instances de B contenues dans sa liste.

Il peut arriver alors que des instances classes utilisatrices utilisent ces pointeurs bien que ceux-ci aient été supprimés.

Quelles bonnes pratiques recommander pour gérer ce genre de cas de figure ? Merci d'avance à ceux qui m'aideront à y voir plus clair.