Comment accéder à la file d'attente sous-jacente d'un threadpoolExecutor dans une manière sûre de fil
Question
La méthode getQueue () donne accès à la file d'attente de blocage sous-jacente dans le threadpoolExecutor, mais cela ne semble pas être sûr.
Une traversée sur la file d'attente renvoyée par cette fonction pourrait manquer des mises à jour faites à la file d'attente par le threadpoolExecutor.
"Méthode GetQueue () permet d'accéder à la file d'attente de travail à des fins de surveillance et de débogage. L'utilisation de cette méthode à d'autres fins est fortement découragée."
Que feriez-vous si vous vouliez parcourir le travail utilisé par le threadpoolExecutor? Ou y a-t-il une approche alternative?
Ceci est une continuation de ..Choisir une structure de données pour une variante du problème des consommateurs producteurs
Maintenant, j'essaye le producteur multiple multiple consommateur, mais je veux utiliser un threadpool existant, car je ne veux pas gérer le threadpool moi-même, et je veux aussi un rappel lorsque ThreadPoolExecutor a fini d'exécuter une tâche ainsi que la possibilité d'examiner Dans un fil de discussion sûr, la structure de données "Inprogress Transactions".
Pas de solution correcte