OVH Cloud OVH Cloud

Thread et browser

6 réponses
Avatar
Benito
Bonjour,

je me demandais si chaque fois qu'un utilisateur ouvrait browser sur une
application asp.net, il creait un nouveau thread.

tout cela car j'ai des methodes static qui recupere des donnees personnels
au user et je me demande si deux personnes accede en meme temps a ces
methodes peut il y avoir confusion.

Merci d'avance.

Benoit.

6 réponses

Avatar
Patrice
Des méthodes ou des données "static" ? Pour du code cela ne pose pas de
soucis. Pour des données, elles seraient commune à toutes les instances de
cette classe particulière pour l'application. Une appication Web constitue
une seule application et les données seraient donc partagées par tous les
utilisateurs...

Patrice
--

"Benito" a écrit dans le message de
news:
Bonjour,

je me demandais si chaque fois qu'un utilisateur ouvrait browser sur une
application asp.net, il creait un nouveau thread.

tout cela car j'ai des methodes static qui recupere des donnees personnels
au user et je me demande si deux personnes accede en meme temps a ces
methodes peut il y avoir confusion.

Merci d'avance.

Benoit.



Avatar
Benito
Ok mais si je souhaite que cette donnee static soit accessible, unique et
static pour chaque browser ouvert, connais tu une solution?

J'ai essaye de rendre mes donnees static thread safe mais cela ne fonctionne
pas. Je croyais que chaque fois que l'on ouvrait un nouveau browser (ou pour
chaque utilisateur) un nouveau thread etait créé.

Merci.

Benoit

"Patrice" wrote:

Des méthodes ou des données "static" ? Pour du code cela ne pose pas de
soucis. Pour des données, elles seraient commune à toutes les instances de
cette classe particulière pour l'application. Une appication Web constitue
une seule application et les données seraient donc partagées par tous les
utilisateurs...

Patrice
--

"Benito" a écrit dans le message de
news:
> Bonjour,
>
> je me demandais si chaque fois qu'un utilisateur ouvrait browser sur une
> application asp.net, il creait un nouveau thread.
>
> tout cela car j'ai des methodes static qui recupere des donnees personnels
> au user et je me demande si deux personnes accede en meme temps a ces
> methodes peut il y avoir confusion.
>
> Merci d'avance.
>
> Benoit.
>





Avatar
Patrice
Par définition, si elle est "static" elle est unique pour toutes les
instances de la classe donc pour tout le monde.

Dans ce cas, il faudrait plutôt utiliser des variables de session ou le
cache par exemple...

Tu peux éventuellement mixer les deux approches en ayant :
- des propriétés "statiques"
- mais qui sauvent les données non pas dans des membres statiques mais dans
des variables de session.

Par exemple :
http://www.c2i.fr/code.aspx?IDCodeR5

Patrice

--

"Benito" a écrit dans le message de
news:
Ok mais si je souhaite que cette donnee static soit accessible, unique et
static pour chaque browser ouvert, connais tu une solution?

J'ai essaye de rendre mes donnees static thread safe mais cela ne


fonctionne
pas. Je croyais que chaque fois que l'on ouvrait un nouveau browser (ou


pour
chaque utilisateur) un nouveau thread etait créé.

Merci.

Benoit

"Patrice" wrote:

> Des méthodes ou des données "static" ? Pour du code cela ne pose pas de
> soucis. Pour des données, elles seraient commune à toutes les instances


de
> cette classe particulière pour l'application. Une appication Web


constitue
> une seule application et les données seraient donc partagées par tous


les
> utilisateurs...
>
> Patrice
> --
>
> "Benito" a écrit dans le message de
> news:
> > Bonjour,
> >
> > je me demandais si chaque fois qu'un utilisateur ouvrait browser sur


une
> > application asp.net, il creait un nouveau thread.
> >
> > tout cela car j'ai des methodes static qui recupere des donnees


personnels
> > au user et je me demande si deux personnes accede en meme temps a ces
> > methodes peut il y avoir confusion.
> >
> > Merci d'avance.
> >
> > Benoit.
> >
>
>
>


Avatar
Benito
Merci pour ces infos.

J'ai une derniere question a laquelle tu peux peut etre repondre:

Je croyais que chaque fois que l'on ouvrait un nouveau browser IE (ou
pour chaque utilisateur) un nouveau thread etait créé.

Je n'arrive pas a trouve de reponse sur le net.

Merci

Benoit


"Patrice" wrote:

Par définition, si elle est "static" elle est unique pour toutes les
instances de la classe donc pour tout le monde.

Dans ce cas, il faudrait plutôt utiliser des variables de session ou le
cache par exemple...

Tu peux éventuellement mixer les deux approches en ayant :
- des propriétés "statiques"
- mais qui sauvent les données non pas dans des membres statiques mais dans
des variables de session.

Par exemple :
http://www.c2i.fr/code.aspx?IDCodeR5

Patrice

--

"Benito" a écrit dans le message de
news:
> Ok mais si je souhaite que cette donnee static soit accessible, unique et
> static pour chaque browser ouvert, connais tu une solution?
>
> J'ai essaye de rendre mes donnees static thread safe mais cela ne
fonctionne
> pas. Je croyais que chaque fois que l'on ouvrait un nouveau browser (ou
pour
> chaque utilisateur) un nouveau thread etait créé.
>
> Merci.
>
> Benoit
>
> "Patrice" wrote:
>
> > Des méthodes ou des données "static" ? Pour du code cela ne pose pas de
> > soucis. Pour des données, elles seraient commune à toutes les instances
de
> > cette classe particulière pour l'application. Une appication Web
constitue
> > une seule application et les données seraient donc partagées par tous
les
> > utilisateurs...
> >
> > Patrice
> > --
> >
> > "Benito" a écrit dans le message de
> > news:
> > > Bonjour,
> > >
> > > je me demandais si chaque fois qu'un utilisateur ouvrait browser sur
une
> > > application asp.net, il creait un nouveau thread.
> > >
> > > tout cela car j'ai des methodes static qui recupere des donnees
personnels
> > > au user et je me demande si deux personnes accede en meme temps a ces
> > > methodes peut il y avoir confusion.
> > >
> > > Merci d'avance.
> > >
> > > Benoit.
> > >
> >
> >
> >





Avatar
Patrice
Je pense que oui si le navigateur est lancé explicitement par l'utilisateur
(et non pas si l'on utilise "nouvelle fenêtre" par exemple). Je crois que le
mieux est de considérer ce comportement comme "non défini".

J'ai vu des discussions récentes sur le sujet dont une qui suggère
d'utiliser dans les noms des variables de session, cache etc... un
"identifiant" de fenêtre. Cela permettra donc à chaque fenêtre d'utiliser
dans une même session ses propres variables...

(pour être complet c'est moyennement relié au problème précédent).

Patrice

--

"Benito" a écrit dans le message de
news:
Merci pour ces infos.

J'ai une derniere question a laquelle tu peux peut etre repondre:

Je croyais que chaque fois que l'on ouvrait un nouveau browser IE (ou
pour chaque utilisateur) un nouveau thread etait créé.

Je n'arrive pas a trouve de reponse sur le net.

Merci

Benoit


"Patrice" wrote:

> Par définition, si elle est "static" elle est unique pour toutes les
> instances de la classe donc pour tout le monde.
>
> Dans ce cas, il faudrait plutôt utiliser des variables de session ou le
> cache par exemple...
>
> Tu peux éventuellement mixer les deux approches en ayant :
> - des propriétés "statiques"
> - mais qui sauvent les données non pas dans des membres statiques mais


dans
> des variables de session.
>
> Par exemple :
> http://www.c2i.fr/code.aspx?IDCodeR5
>
> Patrice
>
> --
>
> "Benito" a écrit dans le message de
> news:
> > Ok mais si je souhaite que cette donnee static soit accessible, unique


et
> > static pour chaque browser ouvert, connais tu une solution?
> >
> > J'ai essaye de rendre mes donnees static thread safe mais cela ne
> fonctionne
> > pas. Je croyais que chaque fois que l'on ouvrait un nouveau browser


(ou
> pour
> > chaque utilisateur) un nouveau thread etait créé.
> >
> > Merci.
> >
> > Benoit
> >
> > "Patrice" wrote:
> >
> > > Des méthodes ou des données "static" ? Pour du code cela ne pose pas


de
> > > soucis. Pour des données, elles seraient commune à toutes les


instances
> de
> > > cette classe particulière pour l'application. Une appication Web
> constitue
> > > une seule application et les données seraient donc partagées par


tous
> les
> > > utilisateurs...
> > >
> > > Patrice
> > > --
> > >
> > > "Benito" a écrit dans le message


de
> > > news:
> > > > Bonjour,
> > > >
> > > > je me demandais si chaque fois qu'un utilisateur ouvrait browser


sur
> une
> > > > application asp.net, il creait un nouveau thread.
> > > >
> > > > tout cela car j'ai des methodes static qui recupere des donnees
> personnels
> > > > au user et je me demande si deux personnes accede en meme temps a


ces
> > > > methodes peut il y avoir confusion.
> > > >
> > > > Merci d'avance.
> > > >
> > > > Benoit.
> > > >
> > >
> > >
> > >
>
>
>


Avatar
Paul Bacelar
Vous confondez les processus IE coté client qui sont au nombre des instances
d'IE ouvert sur un poste client et les threads server d'ASP.NET qui sont
"poolés" et donc en nombre variables en fonction de la charge CPU du server
et pas en fonctions du nombre de d'utilisateur ou de browser "connectés"
simultanément.
--
Paul Bacelar


"Patrice" wrote in message
news:#
Je pense que oui si le navigateur est lancé explicitement par


l'utilisateur
(et non pas si l'on utilise "nouvelle fenêtre" par exemple). Je crois que


le
mieux est de considérer ce comportement comme "non défini".

J'ai vu des discussions récentes sur le sujet dont une qui suggère
d'utiliser dans les noms des variables de session, cache etc... un
"identifiant" de fenêtre. Cela permettra donc à chaque fenêtre d'utiliser
dans une même session ses propres variables...

(pour être complet c'est moyennement relié au problème précédent).

Patrice

--

"Benito" a écrit dans le message de
news:
> Merci pour ces infos.
>
> J'ai une derniere question a laquelle tu peux peut etre repondre:
>
> Je croyais que chaque fois que l'on ouvrait un nouveau browser IE (ou
> pour chaque utilisateur) un nouveau thread etait créé.
>
> Je n'arrive pas a trouve de reponse sur le net.
>
> Merci
>
> Benoit
>
>
> "Patrice" wrote:
>
> > Par définition, si elle est "static" elle est unique pour toutes les
> > instances de la classe donc pour tout le monde.
> >
> > Dans ce cas, il faudrait plutôt utiliser des variables de session ou


le
> > cache par exemple...
> >
> > Tu peux éventuellement mixer les deux approches en ayant :
> > - des propriétés "statiques"
> > - mais qui sauvent les données non pas dans des membres statiques mais
dans
> > des variables de session.
> >
> > Par exemple :
> > http://www.c2i.fr/code.aspx?IDCodeR5
> >
> > Patrice
> >
> > --
> >
> > "Benito" a écrit dans le message de
> > news:
> > > Ok mais si je souhaite que cette donnee static soit accessible,


unique
et
> > > static pour chaque browser ouvert, connais tu une solution?
> > >
> > > J'ai essaye de rendre mes donnees static thread safe mais cela ne
> > fonctionne
> > > pas. Je croyais que chaque fois que l'on ouvrait un nouveau browser
(ou
> > pour
> > > chaque utilisateur) un nouveau thread etait créé.
> > >
> > > Merci.
> > >
> > > Benoit
> > >
> > > "Patrice" wrote:
> > >
> > > > Des méthodes ou des données "static" ? Pour du code cela ne pose


pas
de
> > > > soucis. Pour des données, elles seraient commune à toutes les
instances
> > de
> > > > cette classe particulière pour l'application. Une appication Web
> > constitue
> > > > une seule application et les données seraient donc partagées par
tous
> > les
> > > > utilisateurs...
> > > >
> > > > Patrice
> > > > --
> > > >
> > > > "Benito" a écrit dans le


message
de
> > > > news:
> > > > > Bonjour,
> > > > >
> > > > > je me demandais si chaque fois qu'un utilisateur ouvrait browser
sur
> > une
> > > > > application asp.net, il creait un nouveau thread.
> > > > >
> > > > > tout cela car j'ai des methodes static qui recupere des donnees
> > personnels
> > > > > au user et je me demande si deux personnes accede en meme temps


a
ces
> > > > > methodes peut il y avoir confusion.
> > > > >
> > > > > Merci d'avance.
> > > > >
> > > > > Benoit.
> > > > >
> > > >
> > > >
> > > >
> >
> >
> >