Methode static - C#/.NET managed - Programmation
Marsh Posté le 05-05-2009 à 14:19:58
Comment plusieurs personnes pourraient exécuter ce bout de code en même temps ?
C'est pas du compilé ?
Plusieurs utilisateurs lancent le même exécutable ? Même là ce ne serait pas possible, les instance du programme seraient tourneraient dans des contextes d'exécution différents.
Marsh Posté le 05-05-2009 à 16:17:23
kao98 a écrit : Comment plusieurs personnes pourraient exécuter ce bout de code en même temps ? |
Ou plus simplement plusieurs thread dans une même application? Si c'est le cas et pour répondre à la question d'origine alors oui, les solutions sont la gestion manuelle de la concurrence d'accés avec un lock (me semble qu'il y a un attribut .net a appliquer à la méthode pour pas gérer ça manuellement, me souviens plus trés bien), ou plus simple rendre la méthode non statique mais alors il faut aussi qu'elle cesse de travailler sur des variables statiques (ou globales) et seulement sur des variables membres non statiques. Le choix de l'une au l'autre solution dépend surtout de l'importance que ton appli accorde ou non au fait que tous les threads travaillent avec les mêmes données.
Marsh Posté le 05-05-2009 à 18:44:45
J'y avais pensé, mais si c'était le cas, il l'aurait mentionné.
Plusieurs utilisateurs != plusieurs thread.
Marsh Posté le 11-05-2009 à 16:59:07
kao98 a écrit : J'y avais pensé, mais si c'était le cas, il l'aurait mentionné. |
Un site web asp.net? Et ma réponse ne vaut effectivement que pour plusieurs threads lancés depuis un même exécutable. Il parle qd même de variables qui "seraient les mêmes pour tous", ce qui n'a pas de sens si ya d'autant d'exe que d'utilisateurs . Enfin faudrait qu'il nous éclaire.
Marsh Posté le 05-05-2009 à 11:12:40
Bonjour
je vais prendre un exemple ca sera plus explicite
La question que je me pose c'est si deux personne en meme temps lance la méthode, est ce que ca poserai pas probleme etant donner que les variables sont les meme pour tous du coup ?
Comment resoudre le probleme ? Lock ? ou degager le static ?
( j'utilise a peu pres la meme technique pour les update and insert )