6 votes

Limiter le nombre de threads dans Groovy

Comment limiter le nombre de threads exécutés en même temps ? Voici un exemple de mon algorithme :

for(i = 0; i < 100000; i++) {
    Thread.start {
        // Do some work
    }
}

Je voudrais m'assurer qu'une fois que le nombre de threads dans mon application atteint 100, l'algorithme se met en pause/attente jusqu'à ce que le nombre de threads dans l'application passe en dessous de 100.

Actuellement, "some work" prend un certain temps et je me retrouve avec quelques milliers de threads dans mon application. Finalement, il n'y a plus de threads et "some work" se plante. J'aimerais résoudre ce problème en limitant le nombre de pools qu'il peut utiliser en même temps.

Veuillez me faire savoir comment résoudre mon problème.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X