pma3d
Messages postés36Date d'inscriptionlundi 13 juin 2005StatutMembreDernière intervention14 septembre 2005
-
29 juin 2005 à 13:41
TheSaib
Messages postés2367Date d'inscriptionmardi 17 avril 2001StatutMembreDernière intervention26 décembre 2007
-
29 juin 2005 à 14:02
Bonjour à tous,
Et oui, c'est encore moi ! J'aimerais savoir si quelqu'un
pourrait m'expliquer la différence entre une variable déclarée en
static dans un webservice et une variable utilisant l'état
d'application :
public static int test;
ou
Application["int"] = test;
La msdn 'vend' l'état d'application comme étant le mécanisme de
variable globale des services web, mais, a première vue, les deux
fonctionnent de la même manière : à la première instanciation du
service, on instancie la variable static, ou on remplit l'état
d'application (appelé "int" dans mon exemple).
Alors, comme les deux existent, je me dis qu'il doit y avoir une différence (même légère) entre les deux.
Autre question (peut-être d'ailleurs la réponse à la première) : pour
l'état d'application, il y a un mécanisme de sémaphore (lock et unlock
autour d'une instruction qui accède à la variable globale, pour éviter
des problèmes de violation d'accès en utilisation concurrente), mais
qu'en est-il des variables déclarées en static ?
TheSaib
Messages postés2367Date d'inscriptionmardi 17 avril 2001StatutMembreDernière intervention26 décembre 200723 29 juin 2005 à 13:56
Le problème du static c'est que tu n'est pas sûr que ton WebService tourne toujours dans le même domaine / processus. Si les processus sont dédoublés (gd nb d'utilisateurs) ta variable static n'aura du coup aucun sens, contrairement à Application.