J'ai une sorte de problème complexe comme ci-dessous. - nous avons un système en temps réel avec un grand nombre de threads requis. Afin d'optimiser les performances, nous envisageons de suivre le design.gérer le sommeil dans le service exécuteur programmé java
- créer un exécuteur de pool de threads avec le nombre maximum de fils
- chaque fil est utilisé pour créer un service régulier de l'exécuteur.
maintenant les tâches sont affectés à ces services d'exécuteur testamentaire uniformément en fonction de la charge
mais le plus gros problème est, si l'une des tâches dans la file d'attente contient un sommeil (pendant quelques secondes), il bloque le correspondant Planifiez le thread du service d'exécution pour cette durée et, par la suite, toutes les tâches suivantes dans cette file d'attente. À cet égard, s'il vous plaît me suggérer comment suspendre l'exécution de la tâche avec le sommeil OU en surchargeant le sommeil en quelque sorte et rejoindre/planifier la tâche à nouveau dans la file d'attente.
Merci à l'avance Seshu
Les exécuteurs exécutent généralement des tâches plus petites. Est-ce que votre tâche plus petite a besoin de dormir pendant plusieurs secondes. cela semble qu'il pourrait y avoir des problèmes de conception là-bas. –