Java ExecutorService mettre en pause/reprendre un thread spécifique

Est-il un moyen d'utiliser ExecutorService pour mettre en pause/reprendre un thread spécifique?

private static ExecutorService threadpool = Executors.newFixedThreadPool(5);

Imaginer que je veux arrêter le fil dont l'id=0 (en supposant que chacun se voit attribuer un id incrémentielle jusqu'à ce que la taille du pool de threads est atteint).

Après un certain temps, en appuyant sur un bouton, disons, je veux la reprendre thread spécifique et de laisser tous les autres threads avec leur statut actuel, qui peut être mis en pause ou reprise.

J'ai trouvé sur la documentation de Java une version inachevée de PausableThreadPoolExecutor. Mais il ne convient pas à ce dont j'ai besoin, car il reprendre tous les threads du pool.

Si il n'y a aucun moyen de le faire avec l'implémentation par défaut de la ExecutorService quelqu'un peut me pointer à une implémentation de Java pour ce problème?

Merci!

  • Êtes-vous sûr? Fil avec id donné exécute certains choisie au hasard de travail, de sorte que vous êtes à l'arrêt de certaines inconnues de l'emploi. Quel est le sens de le faire?
  • Imaginez la situation suivante: Vous avez un gestionnaire de téléchargement, et que gestionnaire, vous pouvez arrêter et reprendre les téléchargements. Pour chacun, vous êtes à télécharger les choses, n'a pas d'importance ce ne sont pas pertinentes, et que vous voulez arrêter de télécharger reprendre là où vous le voulez. Cela rend la question plus clair pour vous?
  • Plus clair, mais toujours pas beaucoup de sens. Arrêter/reprendre des téléchargements est sur une logique d'entreprise, tandis que le pool de threads est sur des ressources de calcul. À la logique de contrôle par ajout/suppression de ressources est une mauvaise idée à mon humble avis.