OVH Cloud OVH Cloud

Liste des threads en cours

2 réponses
Avatar
Kupee
Salut, j'ai besoin d'avoir la liste des threads actifs en cours.
J'ai bien ce ptit bout de code
Thread[] threads = new Thread[Thread.activeCount()];
Thread.enumerate(threads);

mais ca me gene un peu car qu'est ce qui me garantie qu'aucun thread ne
va mourir ou etre créé entre les 2 lignes et du coup me péter mon code ?
Ya t'il une solution a ca ?

2 réponses

Avatar
Hervé AGNOUX
Kupee wrote:

Salut, j'ai besoin d'avoir la liste des threads actifs en cours.
J'ai bien ce ptit bout de code
Thread[] threads = new Thread[Thread.activeCount()];
Thread.enumerate(threads);

mais ca me gene un peu car qu'est ce qui me garantie qu'aucun thread ne
va mourir ou etre créé entre les 2 lignes et du coup me péter mon code ?
Ya t'il une solution a ca ?


Thread.enumerate est un appel à ThreadGroup.enumerate. Dans le javadoc de
cette dernière ils expliquent une espèce de solution pour ce qui te
préoccupe.

Bon courage.


--
Hervé AGNOUX
http://www.diaam-informatique.com

Avatar
Kupee
Kupee wrote:

Salut, j'ai besoin d'avoir la liste des threads actifs en cours.
J'ai bien ce ptit bout de code
Thread[] threads = new Thread[Thread.activeCount()];
Thread.enumerate(threads);

mais ca me gene un peu car qu'est ce qui me garantie qu'aucun thread ne
va mourir ou etre créé entre les 2 lignes et du coup me péter mon code ?
Ya t'il une solution a ca ?


Thread.enumerate est un appel à ThreadGroup.enumerate. Dans le javadoc de
cette dernière ils expliquent une espèce de solution pour ce qui te
préoccupe.

Bon courage.


Effectivement, en gros je fais un tableau qui compte 2 fois plus grand
que le nombre de threads actifs et j'espere que mon application n'en
crée pas aussi vite.
merci