C# lock statement

egentilhomme - 21 mars 2024 à 14:32
Whismeril Messages postés 19029 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 26 avril 2024 - 22 mars 2024 à 12:52

Bonjour,

La Classe ModulesController, créé plusieurs classes Module.

La classe Module a une ressource a protéger contre les accès concurrents, car le ModulesController crée ensuite plusieurs Thread qui peuvent accéder aux ressources de ces Module.

L'objet de lock permettant de protéger un Module, peut-il être un Public objet de Module ou bien doit-il  être impérativement un Private objet de la classe ModulesController??

A voir également:

3 réponses

Whismeril Messages postés 19029 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 26 avril 2024 656
21 mars 2024 à 16:38

Bonjour

Ce sont des classes que tu as écrites ou vient-elles d'une librairie tierce (auquel merci d'en préciser l'origine) ?


0
egentilhomme Messages postés 1 Date d'inscription vendredi 22 mars 2024 Statut Membre Dernière intervention 22 mars 2024
22 mars 2024 à 07:57

Ce sont des classes que j'ai écrites

0
Whismeril Messages postés 19029 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 26 avril 2024 656
22 mars 2024 à 12:52

Ok, alors à toi de voir, mais cette propriété doit permettre de bloquer les données d'un ou plusieurs modules pour un temps donné.

A mon sens c'est plus simple à faire si c'est une propriété de la classe Module.

Par contre, tu peux peut-être en limiter la visibilité

Et quelle que soit la visibilité, tu peux la mettre en lecture seule, et tu crées une méthode qui demande à locker (avec éventuellement en paramètres le thread qui demande) et une méthode qui demande à délocker (et si t'as stocké le thread demandeur, tu peux faire en sorte que seul lui débloque)


0
Rejoignez-nous