OVH Cloud OVH Cloud

Threads Performance/Architecture

1 réponse
Avatar
Sebastien
Bonjour,

je voudrai savoir qu'est ce qui est le plus performant, ou=20
votre opinion sur ces point (au niveau performance):

1/
Lors de traitements li=E9 =E0 un =E9v=E9nement :
Vaut il mieux instancier =E0 chaque fois un nouveau thread=20
qui se terminera tout seul

Vaut il mieux instancier un seul thread permanent qui va=20
scruter une pile de message remplie par les =E9v=E9nements.

2/
Dans le cas d'un thread permanent li=E9 =E0 une classe,=20
sachant qu'il y a environ 600 instances, est ce viable ?
Vaut il mieux cr=E9er un seul thread pour toutes ces=20
instances avec une pile de messages statique ?

3/
J'ai vu l'existances de ThreadPool. Ceci peut il =EAtre util=20
dans ce cas ? avez vous des liens qui expliquent=20
clairement son fonctionement avec des exemples ?

merci d'avance

1 réponse

Avatar
Eric Mittelette[MS\)
600 thtread vont mettre ta machinne à genoux !
ThreadPool, va être une bonne solution a priori, <en effet la clr créé au
chargement un pool de thread, ce qui permet d'être tres performeant (pas de
création de ressource thread a chaque fois.
va voir cet article :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/progthrepool.asp
The ThreadPool.QueueUserWorkItem method allows us to launch the execution of
a function on the system thread pool. Its declaration is as follows:

public static bool QueueUserWorkItem (WaitCallback callBack, object state)
HTHEric
"Sebastien" a écrit dans le message de
news:4ac901c490ca$76674750$
Bonjour,

je voudrai savoir qu'est ce qui est le plus performant, ou
votre opinion sur ces point (au niveau performance):

1/
Lors de traitements lié à un événement :
Vaut il mieux instancier à chaque fois un nouveau thread
qui se terminera tout seul

Vaut il mieux instancier un seul thread permanent qui va
scruter une pile de message remplie par les événements.

2/
Dans le cas d'un thread permanent lié à une classe,
sachant qu'il y a environ 600 instances, est ce viable ?
Vaut il mieux créer un seul thread pour toutes ces
instances avec une pile de messages statique ?

3/
J'ai vu l'existances de ThreadPool. Ceci peut il être util
dans ce cas ? avez vous des liens qui expliquent
clairement son fonctionement avec des exemples ?

merci d'avance